Đang chuẩn bị nút TẢI XUỐNG, xin hãy chờ
Tải xuống
Phần 2 "Bài giảng môn học Cấu trúc Dữ liệu và Giải thuật" gồm nội dung chương 3 và chương 4. Nội dung phần 2 gồm có: Sắp xếp (sorting), các cấu trúc dữ liệu cơ bản. Mời bạn đọc tham khảo bài giảng để hiểu các nội dung trên. | Bài giảng môn học Cấu trúc Dữ liệu và Giải thuật Chương 3 Sắp xếp Sorting 1. Bài toán sắp xếp Sắp xếp được xem là một trong những lĩnh vực nghiên cứu cổ điển của khoa học máy tính. Trước khi đi vào các thuật toán chi tiết chúng ta cần nắm vững một số khái niệm cơ bản sau Một trường field là một đơn vị dữ liệu nào đó chẳng hạn như tên tuổi số điện thoại của một người . Một bản ghi record là một tập hợp các trường Một file là một tập hợp các bản ghi Sắp xếp sorting là một quá trình xếp đặt các bản ghi của một file theo một thứ tự nào đó. Việc xếp đặt này được thực hiện dựa trên một hay nhiều trường nào đó và các thông tin này được gọi là khóa xắp xếp key . Thứ tự của các bản ghi được xác định dựa trên các khóa khác nhau và việc sắp xếp đối được thực hiện đối với mỗi khóa theo các thứ tự khác nhau. Chúng ta sẽ tập trung vào các thuật toán xắp xếp và giả sử khóa chỉ gồm 1 trường duy nhất. Hầu hết các thuật toán xắp xếp được gọi là các thuật toán xắp xếp so sánh chúng sử dụng hai thao tác cơ bản là so sánh và đổi chỗ swap các phần tử cần sắp xếp. Các bài toán sắp xếp đơn giản được chia làm hai dạng. Sắp xếp trong internal sorting Dữ liệu cần sắp xếp được lưu đầy đủ trong bộ nhớ trong để thực hiện thuật toán sắp xếp. Sắp xếp ngoài external sorting Dữ liệu cần sắp xếp có kích thước quá lớn và không thể lưu vào bộ nhớ trong để sắp xếp các thao tác truy cập dữ liệu cũng mất nhiều thời gian hơn. Trong phạm vi của môn học này chúng ta chỉ xem xét các thuật toán sắp xếp trong. Cụ thể dữ liệu sắp xếp sẽ là một mảng các bản ghi gồm hai trường chính là trường dữ liệu và trường khóa và để tập trung vào các thuật toán chúng ta chỉ xem xét các trường khóa của các bản ghi này các ví dụ minh họa và cài đặt đều được thực hiện trên các mảng số nguyên coi như là trường khóa của các bản ghi. 2. Sắp xếp gián tiếp Khi các bản ghi có kích thước lớn việc hoán đổi các bản ghi là rất tốn kém khi đó để giảm chi phí người ta có thể sử dụng các phương pháp sắp xếp gián tiếp. Việc này có thể được .