Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 6 - ThS. Nguyễn Thị Khiêm Hòa (ĐH Ngân hàng TP.HCM)
lượt xem 6
download
Chương 6 Sắp xếp nằm trong bài giảng cấu trúc dữ liệu và giải thuật nhằm trình bày về các nội dung chính: các phương pháp sắp xếp cơ bản, đánh giá các phương pháp, Quick - Sort và Heap_Sort, trình bày các thuật toán thông dụng cho việc sắp xếp trong (sắp xếp trên bộ nhớ trong - RAM).
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 6 - ThS. Nguyễn Thị Khiêm Hòa (ĐH Ngân hàng TP.HCM)
- Chương 6: Sắp xếp Giảng viên: Ths. Nguyễn Thị Khiêm Hòa Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
- Nội dung Các phương pháp sắp xếp cơ bản Đánh giá các phương pháp Quick_Sort Heap_Sort Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 2
- Mục tiêu Trình bày các thuật toán thông dụng cho việc sắp xếp trong (sắp xếp trên bộ nhớ trong - RAM) Minh họa các thuật toán Đánh giá thuật toán Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 3
- Đặt vấn đề Trong công việc hàng ngày cũng như các bài toán quản lý kinh tế cần tìm kiếm dữ liệu Dễ dàng Nhanh chóng Ví dụ: danh sách sinh viên, từ điển … Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 4
- Sắp xếp (Sorting) Định nghĩa Sắp xếp là quá trình tổ chức lại một tập hợp k đối tượng theo một trật tự nào đó Hai mô hình sắp xếp Sắp xếp trong (internal), các phần tử cần sắp xếp được lưu sẵn trong RAM Sắp xếp ngoài (external), một số các phần tử cần sắp xếp lưu trong RAM, còn lại được lưu ở bộ nhớ ngoài Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 5
- Các phương pháp sắp xếp cơ bản Phương pháp sắp xếp kiểu lựa chọn Phương pháp sắp xếp chèn Phương pháp sắp xếp đổi chỗ Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 6
- Phương pháp sắp xếp kiểu lựa chọn (Selection Sort) Ý tưởng: Tìm phần tử nhỏ nhất đem về đầu dãy Loại phần tử này ra khỏi dãy Tiếp tục tìm phần tử nhỏ nhất của dãy còn lại. Thuật toán: Ở bước thứ i ta chọn trong Ai, Ai+1, …, An phần tử có khóa nhỏ nhất và đổi chỗ với Ai. Sau n lượt ta có dãy A được sắp thứ tự Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 7
- Phương pháp sắp xếp kiểu lựa chọn (Selection Sort) Ví dụ: Cho dãy số: i=7 6 4 2 3 1 5 Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 8
- Phương pháp sắp xếp kiểu lựa chọn (Selection Sort) public void SelectionSort() { int min,vt; for (int i = 0; i < idx-1; i++) { min = A[i]; vt = i; for (int j = i + 1; j < idx; j++) { if (A[j] < min) { min = A[j]; vt = j; } } if (vt != i) { A[vt] = A[i]; A[i] = min; } } } Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 9
- Phương pháp sắp xếp chèn (Insertion Sort) Thuật toán: Dãy ban đầu A1,A2,…,An xem như đã có đoạn gồm 1 phần tử A1 đã được sắp. Thêm A2 vào A1 sẽ có đoạn A1A2 đã được sắp. Thêm A3 vào A1A2 sẽ có đoạn A1A2 A3 đã được sắp. Tiếp tục cho đến khi thêm xong An vào đoạn A1,A2,…,An-1 sẽ có dãy A1,A2,…,An đã được sắp xếp. Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 10
- Phương pháp sắp xếp chèn (Insertion Sort) Ví dụ: Cho dãy số: i=2 Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 11
- Phương pháp sắp xếp chèn (Insertion Sort) i=3 Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 12
- Phương pháp sắp xếp chèn (Insertion Sort) i=4 Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 13
- Phương pháp sắp xếp chèn (Insertion Sort) i=5 Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 14
- Phương pháp sắp xếp chèn (Insertion Sort) i=6 Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 15
- Phương pháp sắp xếp chèn (Insertion Sort) i=7 Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 16
- Phương pháp sắp xếp chèn (Insertion Sort) i=8 Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 17
- Phương pháp sắp xếp chèn (Insertion Sort) Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 18
- Phương pháp sắp xếp chèn (Insertion Sort) public void Insertion_Sort() { for (int i = 1; i < idx; i++) { int x = A[i]; int j = i - 1; while ((j >= 0)&&(A[j] > x)) { A[j + 1] = A[j]; j--; } A[j + 1] = x; } } Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 19
- Phương pháp sắp xếp đổi chỗ (Bubble Sort) Ý tưởng: Xét từ cuối dãy ngược về vị trí i Nếu hai phần tử kế cận ngược thứ tự thì đổi chỗ cho nhau Thực hiện đến khi không còn phần tử để xét. Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 20
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Cấu trúc dữ liệu - Bài 1:Tổng quan về cấu trúc dữ liệu và giải thuật
47 p | 175 | 17
-
Bài giảng Cấu trúc dữ liệu 1: Chương 1 - Lương Trần Hy Hiến
7 p | 162 | 9
-
Bài giảng Cấu trúc dữ liệu và giải thuật trong C++ - Bài 8: Cấu trúc dữ liệu ngăn xếp
28 p | 77 | 9
-
Bài giảng Cấu trúc dữ liệu giải thuật: Các kiểu dữ liệu trừu tượng cơ bản - Cấu trúc dữ liệu tuyến tính
92 p | 116 | 9
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Cấu trúc dữ liệu cây đỏ đen - Bùi Tiến Lên
25 p | 81 | 8
-
Bài giảng Cấu trúc dữ liệu và giải thuật – Bài 17: Cấu trúc dữ liệu dạng cây
21 p | 77 | 8
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Các cấu trúc dữ liệu
193 p | 59 | 7
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 1 - Trần Minh Thái (2016)
62 p | 94 | 6
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 1 - Trần Minh Thái (Trường Đại học Hồng Bàng )
62 p | 159 | 6
-
Bài giảng Cấu trúc dữ liệu - Chương 3: Cấu trúc cây
65 p | 58 | 6
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Cấu trúc dữ liệu cây AA - Bùi Tiến Lên
30 p | 35 | 6
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 1 – Trần Minh Thái (2017)
67 p | 106 | 4
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Cấu trúc dữ liệu cây - Bùi Tiến Lên
68 p | 40 | 4
-
Bài giảng Cấu trúc dữ liệu: Chương 1 - ThS. Thiều Quang Trung (2018)
44 p | 43 | 4
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Cấu trúc dữ liệu cây AVL - Bùi Tiến Lên
38 p | 47 | 4
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 5 - Ngô Quang Thạch
24 p | 58 | 3
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 2 - Th.S Thiều Quang Trung
41 p | 68 | 3
-
Bài giảng Cấu trúc dữ liệu giải thuật: Cấu trúc dữ liệu
17 p | 50 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn