Vận dụngCâu hỏi 1. Cho dãy các số A = (3, 1, 0, 10, 13, 16, 9, 7, 5, 11].a) Viết chương trình mô tả...
Câu hỏi:
Vận dụng
Câu hỏi 1. Cho dãy các số A = (3, 1, 0, 10, 13, 16, 9, 7, 5, 11].
a) Viết chương trình mô tả thuật toán tìm kiếm phần tử C = 9 của dãy trên. Tính thời gian chính xác thực hiện công việc tìm kiếm này.
b) Giả sử dây A ở trên đã được sắp xếp theo thứ tự tăng dần: A= [4,3,5,7,8, 10, 11, 13. 16]. Viết chương trình tìm kiếm nhị phân để tìm kiếm phân tử C = 9, đo thời gian thực hiện thuật toán. So sánh với kết quả 1ìm kiếm ở câu a.
Câu trả lời:
Người trả lời: GV. Đỗ Hồng Vương
Cách làm:a) - Viết chương trình sử dụng vòng lặp để duyệt từng phần tử trong dãy A.- Kiểm tra nếu phần tử đó bằng với số cần tìm (C = 9) thì trả về vị trí của nó trong dãy.- Nếu không tìm thấy, trả về -1.b)- Viết chương trình tìm kiếm nhị phân cho dãy đã sắp xếp.- Sử dụng thuật toán nhị phân để tìm kiếm phần tử C = 9.- Đo thời gian thực hiện thuật toán để so sánh kết quả với cách tìm kiếm thông thường.Câu trả lời:a) - Viết chương trình sử dụng vòng lặp để duyệt từng phần tử trong dãy A.- Kiểm tra nếu phần tử đó bằng với số cần tìm (C = 9) thì trả về vị trí của nó trong dãy.- Nếu không tìm thấy, trả về -1.- Thời gian thực hiện tìm kiếm theo cách này là O(n) trong trường hợp xấu nhất khi số cần tìm đứng cuối cùng trong dãy.b)- Viết chương trình tìm kiếm nhị phân cho dãy đã sắp xếp.- Sử dụng thuật toán nhị phân để tìm kiếm phần tử C = 9.- Đo thời gian thực hiện thuật toán để so sánh kết quả với cách tìm kiếm thông thường.- Thời gian thực hiện tìm kiếm theo cách nhị phân là O(log n) trong trường hợp xấu nhất.- So sánh kết quả giữa cả hai cách tìm kiếm để nắm rõ hiệu suất của từng phương pháp.
Câu hỏi liên quan:
- Khởi độngCâu hỏi: Làm thế nào để biết trong các thuật toán giải cùng một bài toán thì thuật...
- 1. Vai trò của kiểm thử chương trìnhHoạt động 1: Tìm hiểu ý nghĩa của kiểm thử chương trìnhỞ lớp 10...
- Câu hỏi 1. Giả sử em thiết lập chương trình giải bài toán nào đó. Em đã kiếm thử với 10 bộ dữ liệu...
- Câu hỏi 2. Giả sử một chương trình kiểm thử với 10 bộ dữ liệu cho kết quả 9 lần đúng, 1 lần sai....
- 2. Kiểm tra tính đứng đắn của chương trìnhHoạt động 2: Tìm hiểu cách kiểm tra tính đúng của chương...
- Câu hỏi 1. Chương trình sau giải bài toán: Yêu cầu nhập số tự nhiên n và tính tổng 1 + 2 +n. Chương...
- Câu hỏi 2. Chương trinh sau giải bài toán đếm số các ước số thực sự của số tự nhiên n. Chương trình...
- 3. Đánh giá hiệu quả chương trìnhHoạt động 3: Những tiêu chí đánh giá tính hiệu quả của chương...
- Câu hỏi:Hai tiêu chỉ đánh giá độ phức tạp tính toán quan trọng nhất là gì?
- Luyện tậpCâu hỏi 1. Hãy xây dựng các bộ dữ liệu kiểm thử đề tìm lỗi cho chương trình tính n! với n...
- Câu hỏi 2:Xét hàm mô tả thuật toán tính tổng các số chẵn của một dãy số cho trước.Tìm...
- Câu hỏi 2. Viết ba chương trình mô phỏng các thuật toán sắp xếp chèn, sắp xếp chọn và sắp xếp nổi...
Bình luận (0)