Ngẫu nhiên thì radixsort nhanh nhất, với điều kiện là số hữu tỉ
Ngẫu nhiên thì radixsort nhanh nhất, với điều kiện là số hữu tỉ
Theo mình nếu cho trường hợp dữ liệu ngẫu nhiên thì Quick Sort là nhanh nhất, tính thời gian trung bình.
Còn thực tế thì vẫn phải tùy vào cấu trúc dữ liệu mà chọn thuật toán.
Theo mình học thì tổng quát là QuickSort nhanh nhất.
SEARCH RESULTS: the fastest sort algorithm
http://www.google.com.vn/search?hl=v...orithm&spell=1
Thông tin + clip: http://youtube.com/hoctudau
Tui nghĩ sort theo kiểu cây nhị phân sẽ là nhanh nhất trong hầu hết trường hợp
tui nghĩ là khi n rất lớn thì Merge-Sort là nhanh nhất, còn khi n nhỏ thì insertion-sort là tốt nhất do nó sử dụng các hằng số cố định.
anh em tranh luân sôi nổi quá nhỉ.Mình có một DEMO về các thuật toán sắp xếp viết bằng C# . (nhưng giới hạn 8 thuật toán thôi,)bao gồm các chức năng Demo hình ảnh,Demo bằng số,Demo thời gian
Nếu được anh em comment lại cho mình biết ý kiến nhé
Link dơnload SortDemo : http://www.box.net/shared/n1x8x2hbr4
Theo tôi dược biết thi QuickSort là 1 trong những thuật toán sắp xếp nhanh nhất va tổng quát nhất cho mọi dãy số.
Như ở trên các bạn đã nói thì trong trường hợp dãy đã sắp xếp rồi thì đó là trường hơp xấu nhất với độ phức tạp là O(n2)
Nếu dãy gần như đã sắp xếp rồi thì nên dùng MergeSort hoặc InsertSort sẽ tốt hơn. Nhưng MergeSort thì lại tốn gấp đôi bộ nhớ vì phải dùng mảng trung gian DPT O(nlgn) và InsertSort thi thuong có DPT là O(n2)
Tôi chưa cài đặt được CountingSort, ShellSort, RadixSort hay HeapSort nên có bạn nào cài được bằng C thì post lên cho tôi nhé
mình bị lạc hậu mất rồi, không biết mergeshort, inertsort, shellsort, radixshort là gì nữa
Mình chỉ biết là cái QuickShort là nhanh nhất.
Cho hỏi mọi người có sách nào nói về các loại thuật toán như thế này ko ?
Bookmarks