Giải Tin học 7 Bài 2 Tìm kiếm nhị phân Khởi động Khởi động trang 81 Tin học lớp 7 Nếu phải tìm một số trong dãy đã sắp xếp theo thứ tự tăng hoặc giảm dần, em có cách nào tìm nhanh hơn tìm kiếm tuần tự[.]
Giải Tin học Bài 2: Tìm kiếm nhị phân Khởi động Khởi động trang 81 Tin học lớp 7: Nếu phải tìm số dãy xếp theo thứ tự tăng giảm dần, em có cách tìm nhanh tìm kiếm khơng? Trả lời: Nếu phải tìm số dãy xếp theo thứ tự tăng giảm dần, ta xem số khoảng dãy mà khơng sợ bỏ sót Chia đơi dần để tìm kiếm số dãy số thứ tự Hoạt động Hoạt động trang 81 Tin học lớp 7: Có thẻ, thẻ có ghi số nguyên Tất thẻ xếp thành dãy theo thứ tự khơng giảm số ghi đặt sấp mặt ghi số xuống bàn để em khơng nhìn thấy Cơ giáo đọc số, gọi X chẳng hạn Cần trả lời câu hỏi: Có hay khơng thẻ ghi số X? Hãy sử dụng số lần lật thẻ lên xem mà trả lời câu hỏi Bạn Thành An cho cần không lần lật thẻ trả lời Em đồng ý với Thành An khơng? Vì sao? Trả lời: Em đồng ý với Thành An vì: - Dãy số xếp không giảm, ta chia đôi dãy số, loại bỏ nửa dãy chắn không chứa phần tử cần tìm, tìm kiếm nửa dãy lại Nửa lại ta làm tương tự trước Luyện tập Luyện tập trang 83 Tin học lớp 7: Cho dãy số 5, 11, 18, 39, 41, 52, 63, 70 Hãy mô tả diễn biến bước tìm kiếm nhị phần để tìm kiếm x=60 dãy Có thể trình bày thơng tin mơ tả dạng bảng học Trả lời: Tìm x = 60: Xuất phát Bước Bước A1 A2 11 A3 18 A4 39 39 A5 41 A6 52 52 52 A7 63 A8 70 - Chia đôi lần Phạm vi tìm kiếm từ dãy A1 đến A8 Lấy A4 số có vị trí dãy Vì x >A4 nên nửa đầu dãy chắn không chứa x = 60 Tiếp theo cần tìm nửa sau cảu dãy Phạm vi tìm kiếm từ A5 đến A8 - Chia đơi lần Phạm vi tìm kiếm từ dãy A5 đến A8 Lấy A6 có vị trí dãy Vì x>A6 nên nửa đầu dãy chắn khơng chứa x = 60 Tiếp theo cần tìm nửa sau dãy Phạm vi tìm kiếm từ A7 đến A8 - Chia đôi lần Phạm vi tìm kiếm từ A7 đến A8 Lấy A7 có vị trị dãy Vì x