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 (2017)
Số trang: 124
Loại file: pptx
Dung lượng: 463.24 KB
Lượt xem: 14
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:
Bài giảng Cấu trúc dữ liệu và giải thuật - Chương 2.2: Giải thuật sắp xếp" được biên soạn nhằm giúp người học có thể: 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.
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 (2017) Chương 2.2. Giải thuật sắp xếpTrầnMinhTháiEmail:minhthai@huflit.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 2 Các khái niệm Để truy xuất thông tin nhanh chóng và chính xác thông tin phải được sắp xếp theo một trật tự hợp lý nào đó Một số CTDL đã định nghĩa trước trật tự của các phần tử, khi đó mỗi phần tử khi thêm vào phải đảm bảo trật tự này Sắp xếp là quá trình xử lý một danh 3 sách cácKhái niệm Tương tự như các giải thuật tìm kiếm, khối lượng công việc phải thực hiện có liên quan chặt chẽ với số lần so sánh các khóa Ngoài ra, các giải thuật sắp xếp còn phải di chuyển các phần tử Chiếm nhiều thời gian khi các phần tử có kích thước lớn 4 Các khái niệm Khái niệm nghịch thế a0 a1 a2 a3 … … an- an- An- 3 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ị) 5 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 6Đổi chỗ trực tiếp – interchangesortÝ tưởng Xuất phát từ đầu dãy, tìm tất cả nghịch thế chứa phần tử này, triệt tiêu chúng bằng cách đổi chỗ (hoán vị) Lặp lại xử lý trên với các phần tử tiếp theo trong dãy. 7 Đổ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 0 1 2 3 4 5 6 7 8 Đổi chỗ trực tiếp – interchange sortBước 1: Xét phần tử đầu tiên (tại vị trí 0) 15 10 9 5 7 3 2 1 0 1 2 3 4 5 6 7 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í 0) 15 10 9 5 7 3 2 1 0 1 2 3 4 5 6 7 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í 0) 15 10 9 5 7 3 2 1 0 1 2 3 4 5 6 7 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í 0) 15 10 9 7 5 3 2 1 0 1 2 3 4 5 6 7 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í 0) 15 10 9 7 5 3 2 1 0 1 2 3 4 5 6 7 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í 0) 15 10 9 7 5 2 3 1 0 1 2 3 4 5 6 7 14 i j Đổi chỗ trực tiếp – interchange sortBước 1: Xét phần tử đầu tiên (tại vị trí 0) 15 10 9 7 5 2 3 1 0 1 2 3 4 5 6 7 15 i j Đổi chỗ trực tiếp – interchange sortBước 1: Xét phần tử đầu tiên (tại vị trí 0) Kết thúc bước 1 15 10 9 7 5 1 3 2 0 1 2 3 4 5 6 7 ...
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 (2017) Chương 2.2. Giải thuật sắp xếpTrầnMinhTháiEmail:minhthai@huflit.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 2 Các khái niệm Để truy xuất thông tin nhanh chóng và chính xác thông tin phải được sắp xếp theo một trật tự hợp lý nào đó Một số CTDL đã định nghĩa trước trật tự của các phần tử, khi đó mỗi phần tử khi thêm vào phải đảm bảo trật tự này Sắp xếp là quá trình xử lý một danh 3 sách cácKhái niệm Tương tự như các giải thuật tìm kiếm, khối lượng công việc phải thực hiện có liên quan chặt chẽ với số lần so sánh các khóa Ngoài ra, các giải thuật sắp xếp còn phải di chuyển các phần tử Chiếm nhiều thời gian khi các phần tử có kích thước lớn 4 Các khái niệm Khái niệm nghịch thế a0 a1 a2 a3 … … an- an- An- 3 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ị) 5 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 6Đổi chỗ trực tiếp – interchangesortÝ tưởng Xuất phát từ đầu dãy, tìm tất cả nghịch thế chứa phần tử này, triệt tiêu chúng bằng cách đổi chỗ (hoán vị) Lặp lại xử lý trên với các phần tử tiếp theo trong dãy. 7 Đổ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 0 1 2 3 4 5 6 7 8 Đổi chỗ trực tiếp – interchange sortBước 1: Xét phần tử đầu tiên (tại vị trí 0) 15 10 9 5 7 3 2 1 0 1 2 3 4 5 6 7 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í 0) 15 10 9 5 7 3 2 1 0 1 2 3 4 5 6 7 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í 0) 15 10 9 5 7 3 2 1 0 1 2 3 4 5 6 7 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í 0) 15 10 9 7 5 3 2 1 0 1 2 3 4 5 6 7 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í 0) 15 10 9 7 5 3 2 1 0 1 2 3 4 5 6 7 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í 0) 15 10 9 7 5 2 3 1 0 1 2 3 4 5 6 7 14 i j Đổi chỗ trực tiếp – interchange sortBước 1: Xét phần tử đầu tiên (tại vị trí 0) 15 10 9 7 5 2 3 1 0 1 2 3 4 5 6 7 15 i j Đổi chỗ trực tiếp – interchange sortBước 1: Xét phần tử đầu tiên (tại vị trí 0) Kết thúc bước 1 15 10 9 7 5 1 3 2 0 1 2 3 4 5 6 7 ...
Tìm kiếm theo từ khóa liên quan:
Cấu trúc dữ liệu Cấu trúc dữ liệu và giải thuật Bài giảng Cấu trúc dữ liệu Giải thuật sắp xếp Mảng một chiều Ngôn ngữ CTà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 318 0 0 -
Giáo trình cấu trúc dữ liệu và giải thuât part 2
16 trang 166 0 0 -
Giải thuật và cấu trúc dữ liệu
305 trang 163 0 0 -
3 trang 162 3 0
-
Giáo trình Cấu trúc dữ liệu và giải thuật: Phần 2 - Trần Hạnh Nhi
123 trang 156 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 151 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 139 0 0 -
10 trang 138 0 0
-
57 trang 134 1 0