การแบ่งพาร์ติชันอาร์เรย์หมายความว่าอย่างไร
การแบ่งพาร์ติชันอาร์เรย์หมายความว่าอย่างไร

วีดีโอ: การแบ่งพาร์ติชันอาร์เรย์หมายความว่าอย่างไร

วีดีโอ: การแบ่งพาร์ติชันอาร์เรย์หมายความว่าอย่างไร
วีดีโอ: Partition to K Equal Sum Subsets - source code & running time recurrence relation 2024, พฤศจิกายน
Anonim

พาร์ทิชัน ค่าใน an อาร์เรย์ . คุณมีขนาดใหญ่ อาจมีขนาดใหญ่ อาร์เรย์ ของวัตถุในลำดับแบบสุ่ม คุณต้องการที่จะแยก อาร์เรย์ ในสองส่วน: ครึ่งล่างกับวัตถุที่ตรงกับเงื่อนไข ครึ่งบนกับวัตถุไม่ตรงกับเงื่อนไข การดำเนินการนี้เรียกว่า การแบ่งพาร์ทิชัน ของ อาร์เรย์.

ในที่นี้ Quicksort แบ่งพาร์ติชันอาร์เรย์อย่างไร

กระบวนการสำคัญใน QuickSort เป็น พาร์ทิชัน (). เป้าหมายของ พาร์ทิชัน คือ ให้ อาร์เรย์ และองค์ประกอบ x ของ อาร์เรย์ เป็น pivot ให้ใส่ x atits ตำแหน่งที่ถูกต้องในการ sorted อาร์เรย์ และใส่องค์ประกอบที่เล็กกว่าทั้งหมด (เล็กกว่า x) ก่อน x และใส่องค์ประกอบที่มากกว่าทั้งหมด (มากกว่า x) หลัง x

ประการที่สอง พาร์ติชัน Quicksort ทำงานอย่างไร NS Quicksort อัลกอริทึมคืออัลกอริธึมการเรียงลำดับที่จัดเรียงคอลเล็กชันโดยเลือกจุดหมุนและ การแบ่งพาร์ทิชัน คอลเลกชั่นรอบเดือย ดังนั้นองค์ประกอบที่เล็กกว่าเดือยจะอยู่ข้างหน้า และองค์ประกอบที่ใหญ่กว่าเดือยจะอยู่ข้างหลัง

นอกจากนี้ คุณหมายถึงอะไรโดยปัญหาในการแบ่งพาร์ติชั่น

ในทฤษฎีจำนวนและวิทยาการคอมพิวเตอร์ ปัญหาพาร์ติชั่น , หรือ ตัวเลข การแบ่งพาร์ทิชัน , เป็นงานในการตัดสินใจว่า S หลายชุดที่กำหนดเป็นจำนวนเต็มบวกหรือไม่ สามารถ เป็น พาร์ทิชัน ออกเป็นสองชุดย่อย S1 และ ส2ดังนั้นผลรวมของตัวเลขใน S1 เท่ากับผลรวมของตัวเลขใน S2. แม้ว่า ปัญหาพาร์ทิชัน คือ NP-

อัลกอริทึมการเรียงลำดับที่เร็วที่สุดคืออะไร?

ความซับซ้อนของเวลาของ Quicksort คือ O(n log n) ในกรณีที่ดีที่สุด O(nlog n) ในกรณีทั่วไป และ O(n^2) ในกรณีที่เลวร้ายที่สุด แต่เนื่องจากมีประสิทธิภาพที่ดีที่สุดในกรณีทั่วไปสำหรับอินพุตส่วนใหญ่ โดยทั่วไปแล้ว Quicksort ถือว่าเป็น“ เร็วที่สุด ” อัลกอริทึมการเรียงลำดับ.