Bài tập  /  Bài đang cần trả lời

Tìm kiếm phần tử lớn nhất trong mảng có phần đầu sắp xếp tăng dần và phần sau sắp xếp giảm dần. Yêu cầu: Cho dây 4 gồm n phần tử có giá trị đôi một khác nhau Ấy - sao cho tồn tại k(0 < k

Tìm kiếm phần tử lớn nhất trong mảng có phần đầu sắp xếp tăng dần và phần sau sắp xếp giảm dần.

Yêu cầu: Cho dây 4 gồm n phần tử có giá trị đôi một khác nhau Ấy - sao cho tồn tại k(0 < k

1 Xem trả lời
Hỏi chi tiết
8
0
0
Phạm Minh Trí
13/09/2024 23:00:15

Để giải quyết bài toán trên, hãy thực hiện lần lượt các bài thực hành sau.

Thực hành I: Mô tả chi tiết cách giải bài toán trên dùng phương pháp tim kiếm nhị phân.

Hướng dẫn: Các bước bao gồm:

Bước 1 (Chia). Xác định vị trí k ở chính giữa dãy 4.

Bước 2 (Trị). Xác định dãy bên trái hay bên phải của A, chứa phần tử có giá trị lớn nhất trong dãy, quay trở lại Bước 1 tiếp tục tìm trên dãy mới đó. Quá trình kết thúc khi xác định được phần tử có giá trị lớn nhất.

Thực hành 2: Viết chương trình dùng để quy: Nhập vào giá trị n và n giá trị Add có dạng phần đầu giá trị tăng dần và phần sau giá trị giảm dần, hãy hiển thị phần tử có giá trị lớn nhất của mảng A.

Hướng dẫn: Em hãy dựa vào cách viết chương trình tìm kiếm nhị phân để viết chương trinh cho bài toán này.

Kiểm thử chương trình:

Em hãy chạy kiểm thử chương trinh của phần thực hành với các dữ liệu kiểm thử trong Bảng 1.

Nếu chương trình cho kết quả sai với một bộ dữ liệu kiểm thử thì thêm vào các lệnh để in ra giá trị của các biến; sau đó, chạy lại chương trình với bộ dữ liệu kiểm thử này, theo dõi sự thay đổi giá trị của các biến và phát hiện lệnh nào tính toán sai.

Thực hành 3: Viết chương trình tìm kiếm tuần tự cho bài toán trên. Với mỗi bộ dữ liệu thử nghiệm, em hãy so sánh số lần lặp của chương trình tìm kiếm tuần tự (dùng vòng lặp) với số lần gọi đệ quy của chương trình của phần Thực hành 2 (dùng đệ quy). Từ đó, với nhiều bộ dữ liệu thử nghiệm, em sẽ nhận thấy phương pháp tìm kiếm nhị phân có số lần lặp ít hơn nhiều so với phương pháp tìm kiếm tuần tự.

Hướng dẫn:

Các bước bao gồm:

Bước 1. Viết chương trình tìm kiếm tuần tự dùng vòng lặp để tìm phần tử 4. Sử dụng một biến đếm để đếm số lần lặp.

Bước 2. Sử dụng một biến đếm để đếm số lần thực hiện hàm đệ quy của phần Thực hành 2.

Mở khóa để xem toàn bộ nội dung trả lời

(?)
Bạn đã đạt đến giới hạn của mình. Bằng cách Đăng ký tài khoản, bạn có thể xem toàn bộ nội dung trả lời
Cải thiện điểm số của bạn bằng cách đăng ký tài khoản Lazi.
Xem toàn bộ các câu trả lời, chat trực tiếp 1:1 với đội ngũ Gia sư Lazi bằng cách Đăng nhập tài khoản ngay bây giờ
Tôi đã có tài khoản? Đăng nhập

Bạn hỏi - Lazi trả lời

Bạn muốn biết điều gì?

GỬI CÂU HỎI
Học tập không giới hạn cùng học sinh cả nước và AI, sôi động, tích cực, trải nghiệm

Hôm nay bạn thế nào? Hãy nhấp vào một lựa chọn, nếu may mắn bạn sẽ được tặng 50.000 xu từ Lazi

Vui Buồn Bình thường
×
Trợ lý ảo Trợ lý ảo
×
Đấu trường tri thức | Lazi Quiz Challenge +500k
Gửi câu hỏi
×