BÀI TẬP CÔNG NGHỆ THÔNG TIN TRƯỜNG ITC_2 docx

10 295 0
BÀI TẬP CÔNG NGHỆ THÔNG TIN TRƯỜNG ITC_2 docx

Đang tải... (xem toàn văn)

Thông tin tài liệu

61 © Dương Thành Phết-www.thayphet.net  Giải thuật: Bước 1: i=1; Bước 2: j=N; Trong khi (j>i) thực hiện: Nếu a[j]<a[j-1]: Hoán vị a[j] và a[j-1] j—; Bước 3: i=i+1; Nếu i>N-1: Hết dãy, dừng Ngược lại: Lặp lại Bước 2 Khoa CNTT Trường Cð CNTT TP.HCM This is trial version www.adultpdf.com 62 © Dương Thành Phết-www.thayphet.net Cài ðặt void bubblesort(t M[],int N) { for ( int i=0 ; i<N-1 ; i++) for(int j=N-1 ; j>i ; j ) if(M[j]<M[j-1]) { int tam=M[j]; M[j]=M[j-1]; M[j-1]=tam; } } Khoa CNTT Trường Cð CNTT TP.HCM This is trial version www.adultpdf.com 63 © Dương Thành Phết-www.thayphet.net  ðánh giá giải thuật:  Ðối với giải thuật nổi bọt, số lượng các phép so sánh xảy ra không phụ thuộc vào tình trạng của dãy số ban ñầu  Nhưng số lượng phép hoán vị thực hiện tùy thuộc vào kết qủa so sánh Khoa CNTT Trường Cð CNTT TP.HCM This is trial version www.adultpdf.com 64 © Dương Thành Phết-www.thayphet.net  Ý Tưởng:  Phân hoạch dãy M thành 2 dãy con thỏa mãn ñiều kiện: “1/2 Dãy bên trái chứa các phần tử nhỏ hơn các phần tử của 1/2 Dãy bên phải”  Nếu dãy con có nhiều hơn 1 phần tử thì thực hiện sắp xếp dãy con (ðệ qui). 2.2.6.Giải Thuật Sắp Xếp Nhanh – Quick Sort Khoa CNTT Trường Cð CNTT TP.HCM This is trial version www.adultpdf.com 65 © Dương Thành Phết-www.thayphet.net  Minh Họa Cho dãy có 8 phần tử Sắp xếp theo vi trí tăng dần 10 5 7 3 9 2 15 1 ðoạn cần sắp xếp L=1 R=8 i=1; j=8 L R X=3 i j ðoạn 1 L=1 R=3 ðoạn 2 L=4 R=8 Khoa CNTT Trường Cð CNTT TP.HCM This is trial version www.adultpdf.com 66 © Dương Thành Phết-www.thayphet.net  Minh Họa Cho dãy có 8 phần tử Sắp xếp theo vi trí tăng dần 1 2 3 7 9 5 15 10 ðoạn cần sắp xếp i=4; j=8 L R X=5 i j L=1 R=3 L=4 R=8 ðoạn 1 ðoạn 2 L=4 R=5 L=5 R=8 Khoa CNTT Trường Cð CNTT TP.HCM This is trial version www.adultpdf.com 67 © Dương Thành Phết-www.thayphet.net  Minh Họa Cho dãy có 8 phần tử Sắp xếp theo vi trí tăng dần 1 2 3 5 9 7 15 10 ðoạn cần sắp xếp i=5; j=8 L R X=7 i j L=1 R=3 L=4 R=5 L=6 R=8 L=5 R=8 ðoạn 2 Khoa CNTT Trường Cð CNTT TP.HCM This is trial version www.adultpdf.com 68 © Dương Thành Phết-www.thayphet.net  Minh Họa Cho dãy có 8 phần tử Sắp xếp theo vi trí tăng dần 1 2 3 5 7 9 15 10 ðoạn cần sắp xếp i=6; j=8 L R X=15 i j L=1 R=3 L=4 R=5 L=6 R=8 L=6 R=7 ðoạn 1 Khoa CNTT Trường Cð CNTT TP.HCM This is trial version www.adultpdf.com 69 © Dương Thành Phết-www.thayphet.net  Minh Họa Cho dãy có 8 phần tử Sắp xếp theo vi trí tăng dần 1 2 3 5 7 9 10 15 ðoạn cần sắp xếp i=6; j=7 L R X=15 i j L=1 R=3 L=4 R=5 L=6 R=7 Khoa CNTT Trường Cð CNTT TP.HCM This is trial version www.adultpdf.com 70 © Dương Thành Phết-www.thayphet.net  Minh Họa Cho dãy có 8 phần tử Sắp xếp theo vi trí tăng dần 1 2 3 5 7 9 10 15 ðoạn cần sắp xếp i=4; j=5 L R X=5 i j L=1 R=3 L=4 R=5 Khoa CNTT Trường Cð CNTT TP.HCM This is trial version www.adultpdf.com . hơn các phần tử của 1 /2 Dãy bên phải”  Nếu dãy con có nhiều hơn 1 phần tử thì thực hiện sắp xếp dãy con (ðệ qui). 2. 2.6.Giải Thuật Sắp Xếp Nhanh – Quick Sort Khoa CNTT Trường Cð CNTT TP.HCM This. sánh Khoa CNTT Trường Cð CNTT TP.HCM This is trial version www.adultpdf.com 64 © Dương Thành Phết-www.thayphet.net  Ý Tưởng:  Phân hoạch dãy M thành 2 dãy con thỏa mãn ñiều kiện: “1 /2 Dãy bên trái. 1: i=1; Bước 2: j=N; Trong khi (j>i) thực hiện: Nếu a[j]<a[j-1]: Hoán vị a[j] và a[j-1] j—; Bước 3: i=i+1; Nếu i>N-1: Hết dãy, dừng Ngược lại: Lặp lại Bước 2 Khoa CNTT Trường Cð CNTT

Ngày đăng: 13/08/2014, 23:21

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan