ฉันใช้ JDK-8 (x64) สำหรับArrays.sort
(primitives) ฉันพบสิ่งต่อไปนี้ในเอกสาร Java:
อัลกอริทึมการเรียงลำดับคือ Dual-Pivot Quicksortโดย Vladimir Yaroslavskiy, Jon Bentley และ Joshua Bloch
สำหรับCollections.sort
(วัตถุ) ฉันพบ "Timsort" นี้:
การนำไปใช้งานนี้เป็นการผสานแบบวนซ้ำที่เสถียรและปรับเปลี่ยนได้... การนำไปใช้งานนี้จะทิ้งรายการที่ระบุลงในอาร์เรย์จัดเรียงอาร์เรย์และวนซ้ำในรายการที่รีเซ็ตแต่ละองค์ประกอบจากตำแหน่งที่สอดคล้องกันในอาร์เรย์
ถ้าCollections.sort
ใช้อาร์เรย์ทำไมไม่ได้เพียงโทรArrays.sort
หรือใช้แบบ dual-เดือยQuickSort ? ทำไมต้องใช้Mergesort ?