LTV domain - hosting provider

Cộng Đồng Lập Trình Việt » Cơ sở lập trình » Cấu trúc dữ liệu và giải thuật » Thuật toán sắp xếp nhanh Quick sort

Bảng tin "Lập Trình Việt"
THÔNG BÁO MỚI NHẤT

TUYỂN MOD - Mời Bạn Tham Gia Thành Viên BQT Cộng Đồng Lập Trình Việt

CUỘC THI LẬP TRÌNH ONLINE TỔ CHỨC VÀO THỨ BẢY 7H TỐI HẰNG TUẦN

KẾT QUẢ CUỘC THI LẬP TRÌNH ONLINE


Gởi Ðề Tài Mới  Trả lời
Old 07-02-2010, 12:26 PM   #1 (permalink)
 
Avatar của thucnq
 
Status: If(Programming == "Art") then Programmer = "Artist";
Tham gia ngày: Feb 2009
Tuổi: 25
Bài gởi: 327
Thanks: 90
Thanked 79 Times in 62 Posts
a60 Thuật toán sắp xếp nhanh Quick sort

Ý 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

Copy this link and send via YM,MSN,AOL,ICQ.....



Thay đổi nội dung bởi: thucnq, 07-02-2010 lúc 12:29 PM.
thucnq is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Trả Lời Với Trích Dẫn
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
Ebook Tạo web động với PHP và Mysql ví dụ cụ thể... Bài tập lớn - Đồ án - ebook PHP thucnq 0 665 25-05-2010 10:14 AM
pascal programming guide.pdf tài liệu học pascal... Bài tập lớn - Đồ án - ebook Pascal/Delphi thucnq 0 187 25-05-2010 10:05 AM
4 Bài tập và lời giải thực hành ASP (hướng dẫn... 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 html javascript asp Bài tập - Thực hành ASP/ASP.NET thucnq 0 459 25-05-2010 09:20 AM
Bài tập lớn môn cấu trúc dữ liệu và giải thuật Cấu trúc dữ liệu và giải thuật thucnq 0 557 25-05-2010 08:45 AM

Old 17-02-2010, 10:15 PM   #2 (permalink)
 
Avatar của Super Chicken
 
Status: ADMIN QUẢN LÝ KỸ THUẬT
Tham gia ngày: Jan 2010
Đến từ: Thành Phố Hội An
Tuổi: 16
Bài gởi: 588
Thanks: 49
Thanked 205 Times in 121 Posts
Mặc định Ðề: Thuật toán sắp xếp nhanh Quick sort

Ke ke, My love là ai thế nhỉ

Copy this link and send via YM,MSN,AOL,ICQ.....


__________________


Khi Lập Trình Viên Bị Chép Phạt

Super Chicken is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Trả Lời Với Trích Dẫn
Old 20-02-2010, 06:32 AM   #3 (permalink)
 
Avatar của thucnq
 
Status: If(Programming == "Art") then Programmer = "Artist";
Tham gia ngày: Feb 2009
Tuổi: 25
Bài gởi: 327
Thanks: 90
Thanked 79 Times in 62 Posts
Mặc định Ðề: Thuật toán sắp xếp nhanh Quick sort

my love vô danh mất tiêu rồi

Copy this link and send via YM,MSN,AOL,ICQ.....


thucnq is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Trả Lời Với Trích Dẫn
Gởi Ðề Tài Mới  Trả lời

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

Quuyền Hạn Của Bạn
Bạnkhông thể tạo chủ đề
You may not post replies
You may not post attachments
Bạn không thể sửa bài viết của bạn

BB code is Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt
Trackbacks are Mở
Pingbacks are Mở
Refbacks are Mở




LTV domain - hosting provider
Múi giờ GMT +7. Hiện tại là 04:34 PM.
Powered by: vBulletin v3.x.x Copyright ©2000-2010, Jelsoft Enterprises Ltd. Bản quyền thuộc LTV Co., Ltd