![Phân tích tư tưởng của nhân dân qua đoạn thơ: Những người vợ nhớ chồng… Những cuộc đời đã hóa sông núi ta trong Đất nước của Nguyễn Khoa Điềm](https://timtailieu.net/upload/document/136415/phan-tich-tu-tuong-cua-nhan-dan-qua-doan-tho-039-039-nhung-nguoi-vo-nho-chong-nhung-cuoc-doi-da-hoa-song-nui-ta-039-039-trong-dat-nuoc-cua-nguyen-khoa-136415.jpg)
Bài giảng Cấu trúc dữ liệu và giải thuật: Các giải thuật sắp xếp - Lê Thị Ngọc Hạnh
Số trang: 40
Loại file: pdf
Dung lượng: 970.29 KB
Lượt xem: 4
Lượt tải: 0
Xem trước 4 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Chương này trình bày một số nội dung chính như: giới thiệu bài toán sắp xếp, các phương pháp sắp xếp, đổi chỗ trực tiếp – interchange sort, interchange sort – thuật toán, interchange sort – cài đặt, interchange sort – đánh giá, sắp xếp chọn – selection sort, selection sort – ý tưởng,... Mời các bạn cùng tham khảo.
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: Các giải thuật sắp xếp - Lê Thị Ngọc Hạnh CÁC GIẢI THUẬT SẮP XẾP GV: LÊ THỊ NGỌC HẠNH 19/4/2015 Data structure & Algorithms GIỚI THIỆU BÀI TOÁN SẮP XẾP Bài toán 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ử. Lưu ý: Thứ tự đề cập ở đây là một thứ tự tổng quát. Ví dụ: Danh sách trước khi sắp xếp: {1, 25, 6, 5, 2, 37, 40} Danh sách sau khi sắp xếp: {1, 2, 5, 6, 25, 37, 40}9/4/2015 Data structure & Algorithms 2 GIỚI THIỆU BÀI TOÁN SẮP XẾP Khái niệm “Nghịch thế”Xét một mảng các số a0, a1, …, anNếu có iaj thì ta gọi đó là một nghịchthế.Mảng chưa sắp xếp sẽ có nghịch thếMảng đã có thứ tự sẽ không chứa nghịch thế9/4/2015 Data structure & Algorithms 3 CÁC PHƯƠNG PHÁP SẮP XẾP Selection sort Quick sort Insertion sort Merge sort Interchange sort Radix sort Shaker sort Bubble sort Radix sort Shaker sort … Binary Insertion sort…9/4/2015 Data structure & Algorithms 4 ĐỔI CHỖ TRỰC TIẾP – INTERCHANGE SORT Ý tưởng:Xuất phát từ đầu dãy, tìm tất cả nghịch thế chứaphần tử này triệt tiêu chúng bằng cách đổi chỗphần tử này tử này với phần tử tương ứng trongcặp nghịch thế.Lặp lại xử lý trên với các phần tử tiếp theo trongdãy.9/4/2015 Data structure & Algorithms 5 INTERCHANGE SORT – THUẬT TOÁNBước 1: Khởi tạo i=0 // bắt đầu từ đầu dãyBước 2: j = i+1; //tìm các cặp a[j]IBước 3: Trong khi j INTERCHANGE SORT – VÍ DỤ9/4/2015 Data structure & Algorithms 7 INTERCHANGE SORT – VÍ DỤ9/4/2015 Data structure & Algorithms 8 INTERCHANGE SORT – VÍ DỤ9/4/2015 Data structure & Algorithms 9 INTERCHANGE SORT – CÀI ĐẶTVoid InterchangeSort(int a[], int n){ int i, j; for(i = 0 ; iINTERCHANGE SORT – ĐÁNH GIÁ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.Số lượng phép hoán vị thực hiện tùy thuộc vàokết quả so sánh9/4/2015 Data structure & Algorithms 11SẮP XẾP CHỌN – SELECTION SORT9/4/2015 Data structure & Algorithms 12 SELECTION SORT – Ý TƯỞNG Chọn phần tử nhỏ nhất đặt vào vị trí đầu tiên Chọn phần tử nhỏ nhất trong số n-1 phần tử còn lại đặt vào vị trí thứ 2. Lặp lại quá trình cho đến khi mảng chỉ còn 1 phần tử.9/4/2015 Data structure & Algorithms 13 SELECTION SORT – THUẬT TOÁN Bước 1: Khởi tạo i = 0. Bước 2: Khởi đầu min = i, j = i+1 Bước 3: Nếu a[j] SELECTION SORT – VÍ DỤ9/4/2015 Data structure & Algorithms 15 SELECTION SORT – VÍ DỤ9/4/2015 Data structure & Algorithms 16 SELECTION SORT – VÍ DỤ9/4/2015 Data structure & Algorithms 17 SELECTION SORT – VÍ DỤ9/4/2015 Data structure & Algorithms 18 SELECTION SORT – CÀI ĐẶTvoid SelectionSort(int a[],int n){ int min; // chỉ số phần tử nhỏ nhất trong dãy hiện hành for(int i=0; i SELECTION SORT – ĐÁNH GIÁSố phép so sánh: Tại lượt i bao giờ cũng cần (n-i-1) số lần so sánh Không phụ thuộc vào tình trạng dãy số ban đầu Số phép so sánh:9/4/2015 Data structure & Algorithms 20
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: Các giải thuật sắp xếp - Lê Thị Ngọc Hạnh CÁC GIẢI THUẬT SẮP XẾP GV: LÊ THỊ NGỌC HẠNH 19/4/2015 Data structure & Algorithms GIỚI THIỆU BÀI TOÁN SẮP XẾP Bài toán 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ử. Lưu ý: Thứ tự đề cập ở đây là một thứ tự tổng quát. Ví dụ: Danh sách trước khi sắp xếp: {1, 25, 6, 5, 2, 37, 40} Danh sách sau khi sắp xếp: {1, 2, 5, 6, 25, 37, 40}9/4/2015 Data structure & Algorithms 2 GIỚI THIỆU BÀI TOÁN SẮP XẾP Khái niệm “Nghịch thế”Xét một mảng các số a0, a1, …, anNếu có iaj thì ta gọi đó là một nghịchthế.Mảng chưa sắp xếp sẽ có nghịch thếMảng đã có thứ tự sẽ không chứa nghịch thế9/4/2015 Data structure & Algorithms 3 CÁC PHƯƠNG PHÁP SẮP XẾP Selection sort Quick sort Insertion sort Merge sort Interchange sort Radix sort Shaker sort Bubble sort Radix sort Shaker sort … Binary Insertion sort…9/4/2015 Data structure & Algorithms 4 ĐỔI CHỖ TRỰC TIẾP – INTERCHANGE SORT Ý tưởng:Xuất phát từ đầu dãy, tìm tất cả nghịch thế chứaphần tử này triệt tiêu chúng bằng cách đổi chỗphần tử này tử này với phần tử tương ứng trongcặp nghịch thế.Lặp lại xử lý trên với các phần tử tiếp theo trongdãy.9/4/2015 Data structure & Algorithms 5 INTERCHANGE SORT – THUẬT TOÁNBước 1: Khởi tạo i=0 // bắt đầu từ đầu dãyBước 2: j = i+1; //tìm các cặp a[j]IBước 3: Trong khi j INTERCHANGE SORT – VÍ DỤ9/4/2015 Data structure & Algorithms 7 INTERCHANGE SORT – VÍ DỤ9/4/2015 Data structure & Algorithms 8 INTERCHANGE SORT – VÍ DỤ9/4/2015 Data structure & Algorithms 9 INTERCHANGE SORT – CÀI ĐẶTVoid InterchangeSort(int a[], int n){ int i, j; for(i = 0 ; iINTERCHANGE SORT – ĐÁNH GIÁ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.Số lượng phép hoán vị thực hiện tùy thuộc vàokết quả so sánh9/4/2015 Data structure & Algorithms 11SẮP XẾP CHỌN – SELECTION SORT9/4/2015 Data structure & Algorithms 12 SELECTION SORT – Ý TƯỞNG Chọn phần tử nhỏ nhất đặt vào vị trí đầu tiên Chọn phần tử nhỏ nhất trong số n-1 phần tử còn lại đặt vào vị trí thứ 2. Lặp lại quá trình cho đến khi mảng chỉ còn 1 phần tử.9/4/2015 Data structure & Algorithms 13 SELECTION SORT – THUẬT TOÁN Bước 1: Khởi tạo i = 0. Bước 2: Khởi đầu min = i, j = i+1 Bước 3: Nếu a[j] SELECTION SORT – VÍ DỤ9/4/2015 Data structure & Algorithms 15 SELECTION SORT – VÍ DỤ9/4/2015 Data structure & Algorithms 16 SELECTION SORT – VÍ DỤ9/4/2015 Data structure & Algorithms 17 SELECTION SORT – VÍ DỤ9/4/2015 Data structure & Algorithms 18 SELECTION SORT – CÀI ĐẶTvoid SelectionSort(int a[],int n){ int min; // chỉ số phần tử nhỏ nhất trong dãy hiện hành for(int i=0; i SELECTION SORT – ĐÁNH GIÁSố phép so sánh: Tại lượt i bao giờ cũng cần (n-i-1) số lần so sánh Không phụ thuộc vào tình trạng dãy số ban đầu Số phép so sánh:9/4/2015 Data structure & Algorithms 20
Tìm kiếm theo từ khóa liên quan:
Giải thuật sắp xếp Cấu trúc dữ liệu Bài toán sắp xếp Phương pháp sắp xếp Interchange sort Selection sortTà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 329 0 0 -
Giải thuật và cấu trúc dữ liệu
305 trang 174 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 159 0 0 -
Tập bài giảng Thực hành kỹ thuật lập trình
303 trang 143 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 141 0 0 -
Tài liệu tham khảo: Cấu trúc dữ liệu và giải thuật
229 trang 132 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 121 0 0 -
Ứng dụng và cài đặt cấu trúc dữ liệu bằng C: Phần 1
338 trang 84 0 0 -
Lập trình C - Cấu trúc dữ Liệu
307 trang 82 0 0 -
49 trang 76 0 0