Bảng tin "Lập Trình Việt"
|
| THÔNG BÁO MỚI NHẤT |
CUỘC THI LẬP TRÌNH ONLINE TỔ CHỨC VÀO THỨ BẢY 7H TỐI HẰNG TUẦN |
![]() |
| | #1 (permalink) | |
![]() Status: Tham gia ngày: Feb 2009 Tuổi: 25 Bài gởi: 327
Thanks: 90
Thanked 79 Times in 62 Posts
| Ý tưởng Ta chọn một phần tử bất kỳ của mảng A giả sử đó là x Lọc và chia mảng đó thành 3 mảng con: - mảng A1: A1(i) < x với mọi i - mảng A2: A2(i) = x với mọi i - mảng A3: A3(i) > x với mọi i Sau đó ta lại tiếp tục các bước trên với mảng A1 và A3. Công việc này còn được gọi là phân hoạch nên Quick Sort còn được gọi là sắp xếp theo phương pháp phân hoạch Giải thuật này sẽ được cài đặt theo phương pháp đệ qui Mô tả thuật toán - Input: Mảng A[1..n] - Output: Mảng A có thứ tự tăng dần - Method: Mã: function quickSort(A, lower, upper){ x = A[(lower + upper) / 2]; i = lower; j = upper; do{ while(A[i] < x) i ++; while (A[j] > x) j --; if (i <= j){ swap(A[i], A[j]); i ++; j --; } }while(i <= j); if (j > lower) quickSort(A, lower, j); if (i < upper) quickSort(A, i, upper); } Độ phức tạp tính toán: O(nlnn) Thuật toán Quick Sort tốt nhất trong trường hợp dãy hầu như được sắp xếp và với n khá lớn. Vì vậy ta thường dung Quick Sort trong giai đoạn đầu để phân hoạch, khi đoạn con đủ nhỏ ta sẽ dùng các phương pháp khác để sắp xếp bài này sưu tầm lại của My Love, đã post trong mục VB.Net : http://www.laptrinhviet.com/vb-net/1...hong-dung.html
Thay đổi nội dung bởi: thucnq, 07-02-2010 lúc 12:29 PM. | |
| | |
| Những "Lập Trình Viên" đã cảm ơn thucnq vì bài viết hay: | Super Chicken (17-02-2010) |
5 Chủ đề mới nhất của thucnq
| |||||
| Chủ đề | Chuyên mục | Người gởi sau cùng | Trả lời | Lần đọc | Bài mới gửi |
| | Bài tập lớn - Đồ án - ebook PHP | thucnq | 0 | 665 | 25-05-2010 10:14 AM |
| | Bài tập lớn - Đồ án - ebook Pascal/Delphi | thucnq | 0 | 187 | 25-05-2010 10:05 AM |
| | Bài tập - Thực hành ASP/ASP.NET | thucnq | 0 | 641 | 25-05-2010 09:28 AM |
| | Bài tập - Thực hành ASP/ASP.NET | thucnq | 0 | 459 | 25-05-2010 09:20 AM |
| | Cấu trúc dữ liệu và giải thuật | thucnq | 0 | 557 | 25-05-2010 08:45 AM |
![]() |
| Bookmarks |
| Tag |
| nhanh, quick, sắp, sort, thuật, toán, xếp |
| Ðang đọc: 1 (0 thành viên và 1 khách) | |
| Ðiều Chỉnh | |
| |