Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 2.2 - Trần Minh Thái
Số trang: 119
Loại file: pptx
Dung lượng: 405.49 KB
Lượt xem: 15
Lượt tải: 0
Xem trước 10 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Chương 2.2 trình bày về giải thuật sắp xếp. Mục tiêu của chương này nhằm giúp người học nắm vững, minh họa và tính toán được các phép gán (hoán vị) các giải thuật sắp xếp cơ bản trên mảng một chiều; cài đặt được các giải thuật bằng ngôn ngữ C/C++. Hy vọng bài giảng sẽ là tài liệu tham khảo hữu ích cho quá trình học tập của các bạn.
Nội dung trích xuất từ tài liệu:
Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 2.2 - Trần Minh Thái Chương 2.2. Giải thuật sắp xếpTrầnMinhTháiEmail:minhthai@itc.edu.vnWebsite:www.minhthai.edu.vn 1 Mục tiêu Nắm vững, minh họa và tính toán được các phép gán (hoán vị) các giải thuật sắp xếp cơ bản trên mảng một chiều Cài đặt được các giải thuật bằng ngôn ngữ C/C++ 2 Các khái niệm Sắp xếp là quá trình xử lý một danh sách các phần tử (hoặc các mẫu tin) để đặt chúng theo một thứ tự thỏa mãn một tiêu chuẩn nào đó dựa trên nội dung thông tin lưu giữ tại mỗi phần tử. Khái a1 a2niệma3nghịch a4 thế … … aN- aN- aN 2 1 Giả sử xét mảng có thứ tự tăng dần, nếu có iaj thì ta gọi đó là nghịch thế. Mục tiêu của sắp xếp là khử các nghịch thế (bằng cách hoán vị) 3 Các giải thuật sắp xếp cơ bản Đổi chổ trực tiếp – Interchange Sort Chọn trực tiếp – Selection Sort Chèn trực tiếp – Insertion Sort Nổi bọt – Bubble Sort Quick Sort Một số giải thuật khác đọc thêm trong tài liệu 4Đổi chổ trực tiếp – interchangesort Ý tưởngÝ tưởng chính của giải thuật là xuất phát từ đầudãy, tìm tất cả nghịch thế chứa phần tử này, triệttiêu chúng bằng cách đổi chỗ phần tử này vớiphần tử tương ứng trong cặp nghịch thế. Lặp lạixử lý trên với các phần tử tiếp theo trong dãy. 5 Đổi chổ trực tiếp – interchange sortGiả sử cần sắp xếp dãy số sau tăngdần 15 10 9 5 7 3 2 1 1 2 3 4 5 6 7 8 6 Đổi chổ trực tiếp – interchange sortBước 1: Xét phần tử đầu tiên (tại vị trí 1) 15 10 9 5 7 3 2 1 1 2 3 4 5 6 7 8 7 i j Đổi chổ trực tiếp – interchange sortBước 1: Xét phần tử đầu tiên (tại vị trí 1) 15 10 9 5 7 3 2 1 1 2 3 4 5 6 7 8 8 i j Đổi chổ trực tiếp – interchange sortBước 1: Xét phần tử đầu tiên (tại vị trí 1) 15 10 9 5 7 3 2 1 1 2 3 4 5 6 7 8 9 i j Đổi chổ trực tiếp – interchange sortBước 1: Xét phần tử đầu tiên (tại vị trí 1) 15 10 9 7 5 3 2 1 1 2 3 4 5 6 7 8 10 i j Đổi chổ trực tiếp – interchange sortBước 1: Xét phần tử đầu tiên (tại vị trí 1) 15 10 9 7 5 3 2 1 1 2 3 4 5 6 7 8 11 i j Đổi chổ trực tiếp – interchange sortBước 1: Xét phần tử đầu tiên (tại vị trí 1) 15 10 9 7 5 2 3 1 1 2 3 4 5 6 7 8 12 i j Đổi chổ trực tiếp – interchange sortBước 1: Xét phần tử đầu tiên (tại vị trí 1) 15 10 9 7 5 2 3 1 1 2 3 4 5 6 7 8 13 i j Đổi chổ trực tiếp – interchange sortBước 1: Xét phần tử đầu tiên (tại vị trí 1) Kết thúc bước 1 15 10 9 7 5 1 3 2 1 2 3 4 5 6 7 8 14 i j Đổi chổ trực tiếp – interchange sortBước 2: Xét phần tử thứ hai (tại vị trí 2) 15 10 9 7 5 1 3 2 1 2 3 4 5 6 7 8 15 i j Đổi chổ trực tiếp – interchange sortBước 2: Xét phần tử thứ hai (tại vị trí 2) ...
Nội dung trích xuất từ tài liệu:
Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 2.2 - Trần Minh Thái Chương 2.2. Giải thuật sắp xếpTrầnMinhTháiEmail:minhthai@itc.edu.vnWebsite:www.minhthai.edu.vn 1 Mục tiêu Nắm vững, minh họa và tính toán được các phép gán (hoán vị) các giải thuật sắp xếp cơ bản trên mảng một chiều Cài đặt được các giải thuật bằng ngôn ngữ C/C++ 2 Các khái niệm Sắp xếp là quá trình xử lý một danh sách các phần tử (hoặc các mẫu tin) để đặt chúng theo một thứ tự thỏa mãn một tiêu chuẩn nào đó dựa trên nội dung thông tin lưu giữ tại mỗi phần tử. Khái a1 a2niệma3nghịch a4 thế … … aN- aN- aN 2 1 Giả sử xét mảng có thứ tự tăng dần, nếu có iaj thì ta gọi đó là nghịch thế. Mục tiêu của sắp xếp là khử các nghịch thế (bằng cách hoán vị) 3 Các giải thuật sắp xếp cơ bản Đổi chổ trực tiếp – Interchange Sort Chọn trực tiếp – Selection Sort Chèn trực tiếp – Insertion Sort Nổi bọt – Bubble Sort Quick Sort Một số giải thuật khác đọc thêm trong tài liệu 4Đổi chổ trực tiếp – interchangesort Ý tưởngÝ tưởng chính của giải thuật là xuất phát từ đầudãy, tìm tất cả nghịch thế chứa phần tử này, triệttiêu chúng bằng cách đổi chỗ phần tử này vớiphần tử tương ứng trong cặp nghịch thế. Lặp lạixử lý trên với các phần tử tiếp theo trong dãy. 5 Đổi chổ trực tiếp – interchange sortGiả sử cần sắp xếp dãy số sau tăngdần 15 10 9 5 7 3 2 1 1 2 3 4 5 6 7 8 6 Đổi chổ trực tiếp – interchange sortBước 1: Xét phần tử đầu tiên (tại vị trí 1) 15 10 9 5 7 3 2 1 1 2 3 4 5 6 7 8 7 i j Đổi chổ trực tiếp – interchange sortBước 1: Xét phần tử đầu tiên (tại vị trí 1) 15 10 9 5 7 3 2 1 1 2 3 4 5 6 7 8 8 i j Đổi chổ trực tiếp – interchange sortBước 1: Xét phần tử đầu tiên (tại vị trí 1) 15 10 9 5 7 3 2 1 1 2 3 4 5 6 7 8 9 i j Đổi chổ trực tiếp – interchange sortBước 1: Xét phần tử đầu tiên (tại vị trí 1) 15 10 9 7 5 3 2 1 1 2 3 4 5 6 7 8 10 i j Đổi chổ trực tiếp – interchange sortBước 1: Xét phần tử đầu tiên (tại vị trí 1) 15 10 9 7 5 3 2 1 1 2 3 4 5 6 7 8 11 i j Đổi chổ trực tiếp – interchange sortBước 1: Xét phần tử đầu tiên (tại vị trí 1) 15 10 9 7 5 2 3 1 1 2 3 4 5 6 7 8 12 i j Đổi chổ trực tiếp – interchange sortBước 1: Xét phần tử đầu tiên (tại vị trí 1) 15 10 9 7 5 2 3 1 1 2 3 4 5 6 7 8 13 i j Đổi chổ trực tiếp – interchange sortBước 1: Xét phần tử đầu tiên (tại vị trí 1) Kết thúc bước 1 15 10 9 7 5 1 3 2 1 2 3 4 5 6 7 8 14 i j Đổi chổ trực tiếp – interchange sortBước 2: Xét phần tử thứ hai (tại vị trí 2) 15 10 9 7 5 1 3 2 1 2 3 4 5 6 7 8 15 i j Đổi chổ trực tiếp – interchange sortBước 2: Xét phần tử thứ hai (tại vị trí 2) ...
Tìm kiếm theo từ khóa liên quan:
Cấu trúc dữ liệu Bài giảng cấu trúc dữ liệu Giải thuật sắp xếp Đổi chổ trực tiếp Chọn trực tiếp Chèn trực tiếpGợi ý tài liệu liên quan:
-
Đề cương chi tiết học phần Cấu trúc dữ liệu và giải thuật (Data structures and algorithms)
10 trang 301 0 0 -
Bài giảng Phân tích thiết kế phần mềm: Chương 1 - Trường ĐH Ngoại ngữ - Tin học TP.HCM
64 trang 145 0 0 -
Giải thuật và cấu trúc dữ liệu
305 trang 139 0 0 -
Giáo trình Cấu trúc dữ liệu và thuật toán (Tái bản): Phần 1
152 trang 135 0 0 -
Tập bài giảng Thực hành kỹ thuật lập trình
303 trang 135 0 0 -
Bài giảng Cấu trúc dữ liệu và giải thuật - Chương 4: Một số giải thuật sắp xếp và tìm kiếm
29 trang 106 0 0 -
Tài liệu tham khảo: Cấu trúc dữ liệu và giải thuật
229 trang 99 0 0 -
Lập trình C - Cấu trúc dữ Liệu
307 trang 70 0 0 -
49 trang 66 0 0
-
Bài giảng Cấu trúc dữ liệu và thuật toán: Chương 3 - Một số mô hình thuật toán
42 trang 64 0 0