tailieunhanh - Bài giảng Cấu trúc dữ liệu và giải thuật (Data Structures and Algorithms): Chương 6 - GV. Ngô Công Thắng
Bài giảng Cấu trúc dữ liệu và giải thuật (Data Structures and Algorithms) - Chương 6: Giải thuật sắp xếp. Nội dung chính của chương gồm có: Sắp xếp chọn (Selection Sort), Sắp xếp chèn (Insert Sort), Sắp xếp nổi bọt (Bubble Sort), Sắp xếp nhanh (Quick Sort), Sắp xếp vun đống (Heap Sort), Sắp xếp trộn (Merge Sort). Mời các bạn cùng tham khảo! | 28 04 22 Chương 6 Giải thuật sắp xếp 1. Sắp xếp chọn Selection Sort 2. Sắp xếp chèn Insert Sort 3. Sắp xếp nổi bọt Bubble Sort 4. Sắp xếp nhanh Quick Sort 5. Sắp xếp vun đống Heap Sort 6. Sắp xếp trộn Merge Sort Ngô Công Thắng Bài giàng CTDL amp GT - Chương 06 1 Khi tìm hiểu giải thuật cần tìm hiểu 1 Ý tưởng và ví dụ mình họa ý tưởng 2 Giả mã 3 O Ngô Công Thắng Bài giàng CTDL amp GT - Chương 06 2 1 28 04 22 Bài toán sắp xếp Cho dãy khóa là các số nguyên có n phần tử lưu trữ trong mảng một chiều. Sắp xếp dãy khóa tăng dần từ trái sang phải. a x x x x x x 1 2 3 n a 1 a n Ngô Công Thắng Bài giàng CTDL amp GT - Chương 06 3 1. Sắp xếp chọn Selection Sort . Phương pháp Giả sử cần sắp xếp tăng dần một dãy khoá a1 a2 . an. Ý tưởng của thuật toán như sau Chọn phần tử có khoá nhỏ nhất . Đổi chỗ nó với phần tử a1. Sau đó lặp lại thao tác trên với n-1 phần tử còn lại rồi lại lặp lại như trên với n-2 phần tử còn lại . cho tới khi chỉ còn 1 phần tử. Ngô Công Thắng Bài giàng CTDL amp GT - Chương 06 4 2 28 04 22 . Phương pháp tiếp Ví dụ Cho dãy khoá ban đầu là 6 10 1 8 9 với n 5. i 1 1 10 6 8 9 i 2 1 6 10 8 9 i 3 1 6 8 10 9 i 4 1 6 8 9 10 Ngô Công Thắng Bài giàng CTDL amp GT - Chương 06 5 . Phương pháp tiếp Procedure selectionSort a n For i 1 to n-1 Do Begin 1 Tìm vị trí k của phần tử nhỏ nhất k i For j i 1 To n Do If a j lt a k then k j 2 Đổi chỗ phần tử nhỏ nhất ở vị trí k cho vị trí i If k i then a k a i End Return Ngô Công Thắng Bài giàng CTDL amp GT - Chương 06 6 3 28 04 22 Xác định O i Số lần so sánh lt 1 n 1 2 n 2 n-1 1 Tổng 1 2 n-1 lt 1 2 n n n 1 2 n2 n Coi O n2 n Áp dụng quy tắc bỏ hằng số O n2 n Áp dụng quy tắc cộng O n2 Ngô Công Thắng Bài giàng CTDL amp GT - Chương 06 7 2. Sắp xếp chèn Insert Sort . Phương pháp Phương pháp này được những người chơi bài hay dùng. Giả sử cần sắp xếp tăng dần dãy khoá a1 a2 . an. Ý tưởng thuật toán như sau Các phần tử được chia thành dãy đích a1 . ai-1 kết quả và dãy nguồn ai . an. Bắt đầu với i 2 ở
đang nạp các trang xem trước