TrườngTrường hợphợp tốttốt nhấtnhất: : mỗimỗi lầnlần phânphân hoạchhoạch đềuđều chọnchọn
phần
phần tửtử medianmedian làmlàm mốcmốc, , khikhi đĩđĩ dãydãy đượcđược phânphân chiachia
thành
thành 2 2 phầnphần bằngbằng nhaunhau vàvà cầncần loglog22((nn) ) lầnlần phânphân hoạchhoạch thì
thì sắpsắp xếpxếp xongxong. .
NếuNếu mỗimỗi lầnlần phânphân hoạchhoạch chọnchọn phầnphần tửtử cĩcĩ giágiá trịtrị cựccực đại
đại ( (hayhay cựccực tiểutiểu) ) làlà mốcmốc dãydãy sẽsẽ bịbị phânphân chiachia thànhthành
2
2 phầnphần khơngkhơng đềuđều: : mộtmột phầnphần chỉchỉ cĩcĩ 1 1 phầnphần tửtử, , phầnphần cịn
cịn lạilại gồmgồm ( (nn-1) -1) phầnphần tửtử, , dodo vậyvậy cầncần phânphân hoạchhoạch nn
lần
lần mớimới sắpsắp xếpxếp xongxong..
Quick
Cấu trúc Dữ liệu - Tìm kiếm và S ắp xếp
93
Quick
Quick sortsort –– ĐánhĐánh giágiá giảigiải thuậtthuật
Độ phức tạp thuật tốn: Trường Trường hợp hợp Độ phức tạpĐộ phức tạp Tốt Tốt nhất nhất O(NlogN)O(NlogN) Trung Trung bình bình O(NlogN)O(NlogN) Xấu Xấu nhất nhất O(NO(N 2) 2)
Cấu trúc Dữ liệu - Tìm kiếm và S ắp xếp
94
Hiệu quả phụ thuộc vào việc chọn giá trị mốc:
TrườngTrường hợphợp tốttốt nhấtnhất: : mỗimỗi lầnlần phânphân hoạchhoạch đềuđều chọnchọn
phần
phần tửtử medianmedian làmlàm mốcmốc, , khikhi đĩđĩ dãydãy đượcđược phânphân chiachia
thành
thành 2 2 phầnphần bằngbằng nhaunhau vàvà cầncần loglog22((nn) ) lầnlần phânphân hoạchhoạch thì
thì sắpsắp xếpxếp xongxong. .
NếuNếu mỗimỗi lầnlần phânphân hoạchhoạch chọnchọn phầnphần tửtử cĩcĩ giágiá trịtrị cựccực đại
đại ( (hayhay cựccực tiểutiểu) ) làlà mốcmốc dãydãy sẽsẽ bịbị phânphân chiachia thànhthành
2
2 phầnphần khơngkhơng đềuđều: : mộtmột phầnphần chỉchỉ cĩcĩ 1 1 phầnphần tửtử, , phầnphần cịn
cịn lạilại gồmgồm ( (nn-1) -1) phầnphần tửtử, , dodo vậyvậy cầncần phânphân hoạchhoạch nn
lần
lần mớimới sắpsắp xếpxếp xongxong..
Quick
Cấu trúc Dữ liệu - Tìm kiếm và S ắp xếp
95
Quick
Quick sortsort –– ĐánhĐánh giágiá giảigiải thuậtthuật
Độ phức tạp thuật tốn: Trường Trường hợp hợp Độ phức tạpĐộ phức tạp Tốt Tốt nhất nhất O(NlogN)O(NlogN) Trung Trung bình bình O(NlogN)O(NlogN) Xấu Xấu nhất nhất O(NO(N 2) 2)