Chương 6 Tìm kiếm (Chương 6) - NGUYỄN ĐỨC NGHĨA
- Pages
- 117
- Format
- Size
- 845 KB
- Language
- VI
- Trường
- Đại học Bách khoa Hà Nội
- Views
- 0
- Comments
- 0
- Lượt tải
- 0
Tài liệu trình bày về các thuật toán tìm kiếm cơ bản như tìm kiếm tuần tự và tìm kiếm nhị phân, bao gồm định nghĩa, cách cài đặt, phân tích độ phức tạp và các tình huống áp dụng. Ngoài ra, tài liệu còn giới thiệu về cây nhị phân tìm kiếm.
Frequently asked questions
Is this document free?
Yes. “Chương 6 Tìm kiếm (Chương 6) - NGUYỄN ĐỨC NGHĨA” is free — just sign in and click Download to get the original file.
How many pages is this document?
The document has 117 pages, for the course Cấu trúc dữ liệu và giải thuật. You can preview it online before downloading.
Can I preview before downloading?
Yes. You can preview this document right on this page with the online reader, then decide whether to download.
- Document name
- Chương 6 Tìm kiếm (Chương 6) - NGUYỄN ĐỨC NGHĨA
- School / Course
- Đại học Bách khoa Hà Nội · Cấu trúc dữ liệu và giải thuật
- Content
- Tài liệu trình bày các thuật toán tìm kiếm cơ bản như tìm kiếm tuần tự và tìm kiếm nhị phân, kèm theo phân tích độ phức tạp. Đồng thời, giới thiệu về cấu trúc dữ liệu cây nhị phân tìm kiếm.
- Table of contents
- 6.1. Tìm kiếm tuần tự và tìm kiếm nhị phân
- 6.2. Cây nhị phân tìm kiếm
- 6.3. Bảng băm
- 6.1.1. Tìm kiếm tuần tự (Linear Search or Sequential
- 6.1.2. Tìm kiếm nhị phân
- Bài toán tìm kiếm
- Pages
- 117 pages
- Uploaded by
- Uni24h
Generating preview...
Description
Chương 6 TÌM KIẾM 1 Bài giảng của PGS.TS. NGUYỄN ĐỨC NGHĨA Khoa học Máy tính Đại học Bách khoa Hà nội NỘI DUNG 6.1. Tìm kiếm tuần tự và tìm kiếm nhị phân 6.2. Cây nhị phân tìm kiếm 6.3. Bảng băm KHMT ĐHBKHN 3 6.1. Tìm kiếm tuần tự và tìm kiếm nhị phân 6.1.1. Tìm kiếm tuần tự (Linear Search or Sequential Search) 6.1.2. Tìm kiếm nhị phân KHMT ĐHBKHN 4 Bài toán tìm kiếm Cho danh sách a gồm n phần tử a1, a2, ..., an và một số x. Hỏi x có mặt trong danh sách đã cho hay không? Nếu câu trả lời là khẳng định, hãy đưa ra vị trí xuất hiện của x trong dãy đã cho, nghĩa là đưa ra chỉ số i sao cho ai = x. KHMT ĐHBKHN 5 6.1.1. Tìm kiếm tuần tự current Bắt đầu từ phần tử đầu tiên, duyệt qua từng phần tử cho đến khi tìm được đích hoặc kết luận không tìm được. Các số không cần sắp thứ tự Làm việc được với cả danh sách móc nối (Linked Lists) Độ phức tạp: O(n) KHMT ĐHBKHN 6 Linear Search int linearSearch(float a[], int size, int target) { int i; for (i = 0; i < size; i++) { if (a[i] == target) { return i; } } return -1; } KHMT ĐHBKHN 7 Phân tích thời gian tính Cần đánh giá thời gian tính tốt nhất, tồi nhất, trung bình của thuật toán với độ dài đầu vào là n. Rõ ràng thời gian tính của thuật toán có thể đánh giá bởi số lần thực hiện phép so sánh (*) (a[i] == target) trong vòng lặp for. Nếu a[1] = target thì phép so sánh (*) phải thực hiện 1 lần. Do đó thời gian tính tốt nhất của thuật toán là (1). Nếu target không có mặt trong dãy đã cho, thì phép so sánh (*) phải thực hiện n lần. Vì thế thời gian tính tồi nhất của thuật toán là (n). KHMT ĐHBKHN 8 Phân tích thời gian tính Cuối cùng, ta tính thời gian tính trung bình của thuật toán. Nếu target tìm thấy ở vị trí thứ i của dãy (target = a[i]) thì phép so sánh (*) phải thực hiện i lần (i = 1, 2, ..., n), còn nếu target không có mặt trong dãy đã cho thì phép so sánh (*) phải thực hiện n lần. Từ đó suy ra số lần trung bình phải thực hiện phép so sánh (*) là [(1 + 2 + . . . + n) + n] /(n+1) = [n+ n(n+1)/2
Chương 6 Tìm kiếm (Chương 6) - NGUYỄN ĐỨC NGHĨA
Generating preview...
Chương 6 TÌM KIẾM 1 Bài giảng của PGS.TS. NGUYỄN ĐỨC NGHĨA Khoa học Máy tính Đại học Bách khoa Hà nội NỘI DUNG 6.1. Tìm kiếm tuần tự và tìm kiếm nhị phân 6.2. Cây nhị phân tìm kiếm 6.3. Bảng băm KHMT ĐHBKHN 3 6.1. Tìm kiếm tuần tự và tìm kiếm nhị phân 6.1.1. Tìm kiếm tuần tự (Linear Search or Sequential Search) 6.1.2. Tìm kiếm nhị phân KHMT ĐHBKHN 4 Bài toán tìm kiếm Cho danh sách a gồm n phần tử a1, a2, ..., an và một số x. Hỏi x có mặt trong danh sách đã cho hay không? Nếu câu trả lời là khẳng định, hãy đưa ra vị trí xuất hiện của x trong dãy đã cho, nghĩa là đưa ra chỉ số i sao cho ai = x. KHMT ĐHBKHN 5 6.1.1. Tìm kiếm tuần tự current Bắt đầu từ phần tử đầu tiên, duyệt qua từng phần tử cho đến khi tìm được đích hoặc kết luận không tìm được. Các số không cần sắp thứ tự Làm việc được với cả danh sách móc nối (Linked Lists) Độ phức tạp: O(n) KHMT ĐHBKHN 6 Linear Search int linearSearch(float a[], int size, int target) { int i; for (i = 0; i < size; i++) { if (a[i] == target) { return i; } } return -1; } KHMT ĐHBKHN 7 Phân tích thời gian tính Cần đánh giá thời gian tính tốt nhất, tồi nhất, trung bình của thuật toán với độ dài đầu vào là n. Rõ ràng thời gian tính của thuật toán có thể đánh giá bởi số lần thực hiện phép so sánh (*) (a[i] == target) trong vòng lặp for. Nếu a[1] = target thì phép so sánh (*) phải thực hiện 1 lần. Do đó thời gian tính tốt nhất của thuật toán là (1). Nếu target không có mặt trong dãy đã cho, thì phép so sánh (*) phải thực hiện n lần. Vì thế thời gian tính tồi nhất của thuật toán là (n). KHMT ĐHBKHN 8 Phân tích thời gian tính Cuối cùng, ta tính thời gian tính trung bình của thuật toán. Nếu target tìm thấy ở vị trí thứ i của dãy (target = a[i]) thì phép so sánh (*) phải thực hiện i lần (i = 1, 2, ..., n), còn nếu target không có mặt trong dãy đã cho thì phép so sánh (*) phải thực hiện n lần. Từ đó suy ra số lần trung bình phải thực hiện phép so sánh (*) là [(1 + 2 + . . . + n) + n] /(n+1) = [n+ n(n+1)/2
Read full document
- Document name
- Chương 6 Tìm kiếm (Chương 6) - NGUYỄN ĐỨC NGHĨA
- School / Course
- Đại học Bách khoa Hà Nội · Cấu trúc dữ liệu và giải thuật
- Content
- Tài liệu trình bày các thuật toán tìm kiếm cơ bản như tìm kiếm tuần tự và tìm kiếm nhị phân, kèm theo phân tích độ phức tạp. Đồng thời, giới thiệu về cấu trúc dữ liệu cây nhị phân tìm kiếm.
- Table of contents
- 6.1. Tìm kiếm tuần tự và tìm kiếm nhị phân
- 6.2. Cây nhị phân tìm kiếm
- 6.3. Bảng băm
- 6.1.1. Tìm kiếm tuần tự (Linear Search or Sequential
- 6.1.2. Tìm kiếm nhị phân
- Bài toán tìm kiếm
- Pages
- 117 pages
- Uploaded by
- Uni24h
Comments (0)
No comments yet. Be the first!
Chương 7.Cơ học lượng tử - Vật lý đại cương 3 - TS.Nguyễn Thị Trang
Chương 6.Quang học lượng tử - Vật lý đại cương 3 - TS.Nguyễn Thị Trang
Chương 5.Thuyết tương đối - Vật lý đại cương 3 - TS.Nguyễn Thị Trang
Chương 4. Tán xạ ánh sáng - Vật lý đại cương 3 - TS.Nguyễn Thị Trang
Chương 3.Phân cực ánh sáng - Vật lý đại cương 3 - TS.Nguyễn Thị Trang
Comments (0)
No comments yet. Be the first!