Bài giảng Các giải thuật tìm kiếm, sắp xếp
lượt xem 7
download
Bài giảng Các giải thuật tìm kiếm, sắp xếp bao gồm những nội dung về giải thuật tìm kiếm (tìm kiếm tuần tự, tìm kiếm nhị phân); giải thuật sắp xếp (Insertion sort, Selection sort, Bubble sort, Merge sort, Quick sort). Mời các bạn tham khảo bài giảng để bổ sung thêm kiến thức về lĩnh vực này.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Các giải thuật tìm kiếm, sắp xếp
- CÁC GIẢI THUẬT TÌM KIẾM, SẮP XẾP
- Nội dung Giải thuật tìm kiếm Tìm kiếm tuần tự Tìm kiếm nhị phân Giải thuật sắp xếp Insertion sort Selection sort Bubble sort Merge sort Quick sort ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Chương 2: Stack 2
- Khái niệm tìm kiếm Cho biết: Một danh sách các bản ghi (record). Một khóa cần tìm. Tìm bản ghi có khóa trùng với khóa cần tìm (nếu có). Đo độ hiệu quả: Số lần so sánh khóa cần tìm và khóa của các bản ghi Phân loại: Tìm kiếm nội (internal searching) Tìm kiếm ngoại (external searching) ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Chương 2: Stack 3
- Bản ghi và khóa Bản ghi: Khóa Dữ liệu Khóa: So sánh được Thường là số Trích khóa từ bản ghi: So sánh các bản ghi ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Chương 2: Stack 4
- Hàm tìm kiếm Tham số vào: Danh sách cần tìm Khóa cần tìm Tham số ra: Vị trí phần tử tìm thấy (nếu có) Kết quả hàm: kiểu Error_code Tìm thấy: success Không tìm thấy: not_present ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Chương 2: Stack 5
- Tìm tuần tự (sequential search) position = 2 5 Target key 0 1 2 3 4 5 6 7 7 13 5 21 6 2 8 15 return success Số lần so sánh: 3 ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Chương 2: Stack 6
- Tìm tuần tự - không tìm thấy 9 Target key 0 1 2 3 4 5 6 7 7 13 5 21 6 2 8 15 return not_present Số lần so sánh: 8 ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Chương 2: Stack 7
- Nội dung Giải thuật tìm kiếm Tìm kiếm tuần tự Tìm kiếm nhị phân Giải thuật sắp xếp Insertion sort Selection sort Bubble sort Merge sort Quick sort ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Chương 2: Stack 8
- Tìm nhị phân (binary search) Ý tưởng: So sánh khóa cần tìm với phần tử giữa. Nếu nó nhỏ hơn thì tìm bên trái danh sách. Ngược lại tìm bên phải danh sách. Lặp lại động tác này. Danh sách cần tìm phải có thứ tự (khoá có thứ tự( Cần 2 chỉ mục top và bottom để giới hạn đoạn tìm kiếm trên danh sách. Khóa cần tìm nếu có chỉ nằm trong đoạn này. ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Chương 2: Stack 9
- Tìm nhị phân – Cách 1 position = 3 10 Target key Khóa cần tìm bằng nhỏ hơn lớn hơn hoặc bằng 0 1 2 3 4 5 6 7 8 9 2 5 8 10 12 13 15 18 21 24 bottom middle top return success ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Chương 2: Stack 10
- ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Chương 2: Stack 11
- Tìm nhị phân – Cách 2 position = 3 10 Khóa cần tìm bằng không nhỏ lớn hơn hơn bằng Target key 0 1 2 3 4 5 6 7 8 9 2 5 8 10 12 13 15 18 21 24 bottom middle top return success ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Chương 2: Stack 12
- Tìm nhị phân – Giải thuật 2 Algorithm Binary_search2 Input: target là khóa cần tìm, bottom và top là giới hạn danh sách Output: position là vị trí nếu tìm thấy 1. if bottom > top 1.1. return not_present 2. if bottom
- Nội dung Giải thuật tìm kiếm Tìm kiếm tuần tự Tìm kiếm nhị phân Giải thuật sắp xếp Insertion sort Selection sort Bubble sort Merge sort Quick sort ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Chương 2: Stack 14
- Khái niệm Sắp thứ tự: Đầu vào: một danh sách Đầu ra: danh sách có thứ tự tăng (hoặc giảm) trên khóa Phân loại: Sắp thứ tự ngoại (external sort): tập tin Sắp thứ tự nội (internal sort): bộ nhớ Giả thiết: Sắp thứ tự nội Sắp tăng dần ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Chương 2: Stack 15
- Insertion sort ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Chương 2: Stack 16
- Insertion sort - Danh sách liên tục ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Chương 2: Stack 17
- Giải thuật insertion sort – Danh sách liên tục ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Chương 2: Stack 18
- Nội dung Giải thuật tìm kiếm Tìm kiếm tuần tự Tìm kiếm nhị phân Giải thuật sắp xếp Insertion sort Selection sort Bubble sort Merge sort Quick sort ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Chương 2: Stack 19
- Selection sort ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Chương 2: Stack 20
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Cấu trúc dữ liệu: Chương 2 - Các giải thuật tìm kiếm và sắp thứ tự
186 p | 184 | 22
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 2 - ThS. Trịnh Quốc Sơn (ĐH Công nghệ Thông tin)
186 p | 84 | 21
-
Bài giảng Cấu trúc dữ liệu và thuật toán - Chương 2: Tìm kiếm và sắp xếp
79 p | 100 | 17
-
Bài giảng Kỹ thuật truyền số liệu - Chương 8: Tìm đường trong mạng chuyển mạch
39 p | 96 | 9
-
Bài giảng Cấu trúc dữ liệu và thuật toán: Chương 2 - ThS. Phạn Nguyệt Thuần
143 p | 91 | 9
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Các thuật toán tìm kiếm và sắp xếp cơ bản - Lê Thị Ngọc Hạnh
28 p | 129 | 7
-
Bài giảng Phân tích thiết kế giải thuật - Chương 8: Giải thuật tìm kiếm trong đồ thị
42 p | 101 | 7
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Giải thuật tìm kiếm tuyến tính và nhị phân - TS. Trần Ngọc Việt
38 p | 18 | 5
-
Bài giảng môn Cấu trúc dữ liệu - Chương 2: Kỹ thuật tìm kiếm (searching)
29 p | 75 | 5
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 2 - Trường ĐH Công nghệ Thông tin
191 p | 26 | 4
-
Bài giảng Chương 2: Giải thuật và cấu trúc dữ liệu - TS. Vũ Thị Hương Giang
40 p | 86 | 4
-
Bài giảng Cấu trúc dữ liệu và giải thuật - Chương 2: Tìm kiếm và sắp xếp nội
18 p | 77 | 3
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 2 - Trần Minh Thái (Trường Đại học Hồng Bàng )
30 p | 60 | 3
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 2 - Đỗ Ngọc Như Loan
90 p | 49 | 3
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Tìm kiếm và sắp xếp - Đậu Ngọc Hà Dương
56 p | 13 | 3
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Giải thuật tìm kiếm - TS. Ngô Hữu Dũng
25 p | 59 | 2
-
Bài giảng Các giao thức định tuyến: Các giải thuật định tuyến
64 p | 3 | 1
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