N u d li u đã đ c s p x p s n, thì nên ch n Insertion Sort ho c ế ữ ệ ượ ắ ế ẵ ọ ặ
Shell Sort s t t h n.ẽ ố ơ
N u chúng ta th c s ph i lo i b case x u nh t, có th s d ng ế ự ự ả ạ ỏ ấ ấ ể ử ụ
Heap (ho c ít nh t là Quick3) v i đ ph c t p NlogNặ ấ ớ ộ ứ ạ
Tim Sort s có đ ph c t p th p h n Quick Sort c Best Case l n ẽ ộ ứ ạ ấ ơ ở ả ẫ
Worse Case, Tim Sort là s k t h p c a Merge Sort và Insertion Sort. ự ế ợ ủ
Python s d ng thu t toán s p x p này là m c đ nh c a hử ụ ậ ắ ế ặ ị ủ ọ
Trong tr ng h p, d li u r t ít ph n t (10-20 ph n t ), l a ch n ườ ợ ữ ệ ấ ầ ử ầ ử ự ọ
Selection Sort s nhanh h n Quick SortTóm l i 1 l n n a , v lý ẽ ơ ạ ầ ữ ề
thuy t thì Quick Sort th t s là thu t toán s p x p nhanh nh t trong ế ậ ự ậ ắ ế ấ
ph n l n các tr ng h p. Tuy nhiên, trên th c t , vi c l a ch n thu tầ ớ ườ ợ ự ế ệ ự ọ ậ
toán s p x p d a vào nhi u y u t nh d li u đ u vào s l ng ắ ế ự ề ế ố ư ữ ệ ầ ố ượ
nh th nào, có s p x p s n hay không, dung l ng b nh ra sao, ư ế ắ ế ẵ ượ ộ ớ
t c đ x lý CPU…ố ộ ử
Thu t toán và bài h c cu c s ngậ ọ ộ ố
Mình v n th ng hay nói đùa r ng: “Code không bao gi l a d i chúng ta ẫ ườ ằ ờ ừ ố
c ”. Và th c s thì khi Code mình cũng chiêm nghi m ra nhi u bài h c ả ự ự ệ ề ọ
cu c s ng cho chính mình luôn. đây, t m t câu h i thu t toán s p x p ộ ố Ở ừ ộ ỏ ậ ắ ế
vô cùng đ n gi n nh ng chúng ta có th rút ra đ c r t nhi u bài h c th c ơ ả ư ể ượ ấ ề ọ ự
t :ế
Hãy h c cách đ t l i câu h i cho v n đ đang đ c h i, đ t đó ọ ặ ạ ỏ ấ ể ượ ỏ ể ừ
phân tích tìm ra câu tr l i chính xác nh t. Đôi khi làm d án th c t , ả ờ ấ ự ự ế
khách hàng s đ a ra nh ng yêu c u m h , thay vì c p đ u vào tìm ẽ ư ữ ầ ơ ồ ắ ầ
gi i pháp, hay code thì chúng ta hãy h i rõ khách hàng, làm rõ v n đ ả ỏ ấ ề
đó tr c đãướ
Trong cu c s ng, không có gì là hoàn h o c hãy nhìn đ t v n đ ộ ố ả ả ặ ấ ề
g p ph i d i nhi u góc nhìn khác nhau, đ cân nh c và l a ch n ặ ả ướ ề ể ắ ự ọ
gi i pháp cho h p lýả ợ