Chuyên đề Tin học 12 Bài 4 (Cánh diều): Thực hành tổng hợp: Ứng dụng cây tìm kiếm nhị phân
Với giải bài tập Chuyên đề Tin học 12 Bài 4: Thực hành tổng hợp: Ứng dụng cây tìm kiếm nhị phân sách Cánh diều hay nhất, chi tiết giúp học sinh dễ dàng làm bài tập Chuyên đề học tập Tin học 12 Bài 4.
Giải Chuyên đề Tin học 12 Bài 4: Thực hành tổng hợp: Ứng dụng cây tìm kiếm nhị phân
Thực hành 1 trang 50 Chuyên đề Tin học 12: Mô tả các bước thực hiện thuật toán cho bốn yêu cầu trong bài toán nêu trên.
Lời giải:
Đầu vào của bài toán là một tập các phân tử có giá trị là mã các mặt hàng được nhập vào lần lượt. Các yêu cầu của bài toán cần được mô tả chi tiết các bước thực hiện thuật toán dựa theo hướng dẫn như sau:
(1) Đầu tiên, khởi tạo một cây tìm kiếm nhị phân rỗng. Với mỗi mã mặt hàng
được nhập vào, tạo một nút mới có khoá là mã mặt hàng vừa nhập và chèn
nút vào đúng vị trí trên cây tìm kiếm nhị phân như trong Mục 2 của Bài 3.
2) Với một giá trị x nhập vào, thực hiện thao tác tìm kiếm giá trị khoá x trên cây tìm kiếm nhị phân như trong Mục 3 của Bài 3.
3) Thực hiện phép duyệt cây tìm kiếm nhị phân theo thứ tự giữa sẽ thu được danh sách các mã mặt hàng được đưa ra theo thứ tự giá trị khoá tăng dần như trong Mục 4 của Bài 3.
4) Thực hiện phép duyệt cây tìm kiếm nhị phân theo thứ tự giữa. Trong khi duyệt, nếu gặp nút có giá trị khoá nhỏ hơn min hoặc có giá trị khoá lớn hơn max thì dừng việc duyệt đến các nút con của nó và tiếp tục quay lại quá trình duyệt cho các nhánh khác.
Thực hành 2 trang 50 Chuyên đề Tin học 12: Mô phỏng chi tiết các bước ứng dụng cây tìm kiếm nhị phân giải quyết bài toán đối với một ví dụ cụ thể
Lời giải:
Hướng dẫn: Mỗi nhóm chọn một ví dụ cụ thể và mô phỏng chi tiết từng bước trên ví dụ đó, bao gồm:
• Khởi tạo cây tìm kiếm nhị phân.
• Chèn từng mã mặt hàng vào cây.
• Tìm kiếm một mã mặt hàng trên cây.
• Duyệt cây theo thứ tự giữa tìm nút có giá trị khoá t.
• Duyệt cây theo thứ tự giữa đưa ra danh sách các nút có giá trị khoá trong khoảng từ min đến max.
Thực hành 3 trang 51 Chuyên đề Tin học 12: Viết chương trình duyệt cây nhị phân theo thứ tự giữa
Lời giải:
Các nhóm thực hiện theo các bước sau:
Chuẩn bị các bộ dữ liệu đầu vào cho chương trình, mỗi bộ dữ liệu cần lưu trữ trong một mảng một chiều có cấu trúc là một cây nhị phân hoàn chỉnh có tính chất cây tìm kiếm nhị phân. Ví dụ: Mảng A
=[26, 21, 36, 12, None, None, 40]
biểu diễn một cây tìm kiếm nhị phân hoàn chỉnh.
Viết chương trình duyệt cây theo thứ tự giữa sử dụng mảng một chiều và được cài đặt đệ quy.
Thực hành 4 trang 51 Chuyên đề Tin học 12: Kết quả thử nghiệm trên các bộ dữ liệu đầu vào mẫu và tự tạo
Lời giải:
Với hai bộ dữ liệu mẫu trong Bảng 1 (minh hoạ tại Hình 1 và Hình 2), kết quả thử nghiệm chương trình của mỗi nhóm cần giống với kết quả đầu ra tương ứng trong bảng:
Yêu cầu mỗi nhóm cần tự nhập vào thêm nhiều bộ dữ liệu đầu vào khác nhau và kiểm nghiệm kết quả đầu ra.
Khi áp dụng vào thực tiễn cuộc sống, gia đình Hương Trà cần lưu trữ nhiều thông tin hơn về mỗi mặt hàng như: tên mặt hàng, số lượng, xuất xứ, giá trị nhập vào, giá trị bán ra,... Khi đó, Hương Trà cần mở rộng quản lí cây tìm kiếm nhị phân. Trong bài học này, chưa đề cập đến cách giải quyết vấn đề mở rộng này.
Vận dụng trang 52 Chuyên đề Tin học 12: Em hãy thay giá trị khoá là mã từng mặt hàng bởi tên công ty sản xuất mặt hàng đó và thực hiện các yêu cầu của bài toán thực hành ở trên. Giả thiết rằng tên các công ty là một đôi khác nhau.
Lời giải:
Tên công ty là một chuỗi kí tự không rỗng, ví dụ: Công ty Alphabee, công ty BeatLight, công ty ZentaHome…
Giá trị Min, Max trong thực hành 4 cũng là dạng một chuỗi kí tự.
Cây tìm kiếm nhị phân cần được xây dựng dựa trên việc so sánh chuỗi là giá trị khoá của mỗi nút. Việc so sánh hai chuỗi cần theo quy luật thứ tự từ từ điển của chuỗi kí tự dựa trên thuật toán sau:
1. Khởi tạo biến 1 = 0. Các kí tự trong chuỗi được đánh số từ 0 đến độ dài của chuỗi trừ 1.
2. Bước lặp:
a) So sánh kí tự thứ I của hai chuỗi với nhau.
b) Kí tự nào lớn hơn thì chuỗi chứa kí tự đó sẽ lớn hơn chuỗi còn lại theo thứ tự từ từ điển. Kết thúc quá trình so sánh.
c) i =i +1
d) Bước lặp kết thúc khi i bằng độ dài của một trong hai chuỗi. Nếu độ dài cả hai chuỗi đều bằng i thì hai chuỗi bằng nhau theo thứ tự từ điển. Trái lại, chuỗi nào có độ dài lớn hơn sẽ lớn hơn chuỗi còn lại theo thứ tự từ điển.
Ví dụ “Alphabet” > Aphabee
Sau khi đưa kết quả bài thực hành 3, em nhận xét dãy tên các công ty đưa ra theo phép duyệt thứ tự giữa trên cây tìm kiếm nhị phân có đặc điểm sau: Sử dụng mảng 1 chiều và có sử dụng đệ quy.
Xem thêm các chương trình khác:
- Soạn văn 12 Cánh diều (hay nhất)
- Văn mẫu 12 - Cánh diều
- Tóm tắt tác phẩm Ngữ văn 12 – Cánh diều
- Tác giả tác phẩm Ngữ văn 12 - Cánh diều
- Bố cục tác phẩm Ngữ văn 12 – Cánh diều
- Nội dung chính tác phẩm Ngữ văn 12 – Cánh diều
- Giải sgk Toán 12 – Cánh diều
- Giải Chuyên đề học tập Toán 12 – Cánh diều
- Lý thuyết Toán 12 – Cánh diều
- Giải sbt Toán 12 – Cánh diều
- Giải sgk Tiếng Anh 12 - ilearn Smart World
- Trọn bộ Từ vựng Tiếng Anh lớp 12 ilearn Smart World đầy đủ nhất
- Trọn bộ Ngữ pháp Tiếng Anh lớp 12 ilearn Smart World đầy đủ nhất
- Giải sbt Tiếng Anh 12 – iLearn Smart World
- Giải sgk Vật lí 12 – Cánh diều
- Giải Chuyên đề học tập Vật lí 12 – Cánh diều
- Lý thuyết Vật lí 12 – Cánh diều
- Giải sbt Vật lí 12 – Cánh diều
- Giải sgk Hóa học 12 – Cánh diều
- Giải Chuyên đề học tập Hóa 12 – Cánh diều
- Lý thuyết Hóa 12 – Cánh diều
- Giải sbt Hóa 12 – Cánh diều
- Giải sgk Sinh học 12 – Cánh diều
- Giải Chuyên đề học tập Sinh học 12 – Cánh diều
- Lý thuyết Sinh học 12 – Cánh diều
- Giải sbt Sinh học 12 – Cánh diều
- Giải sgk Lịch sử 12 – Cánh diều
- Giải Chuyên đề học tập Lịch sử 12 – Cánh diều
- Giải sbt Lịch sử 12 – Cánh diều
- Giải sgk Địa lí 12 – Cánh diều
- Giải Chuyên đề học tập Địa lí 12 – Cánh diều
- Giải sbt Địa lí 12 – Cánh diều
- Giải sgk Công nghệ 12 – Cánh diều
- Giải sgk Kinh tế pháp luật 12 – Cánh diều
- Giải Chuyên đề học tập Kinh tế pháp luật 12 – Cánh diều
- Giải sbt Kinh tế pháp luật 12 – Cánh diều
- Giải sgk Giáo dục quốc phòng 12 – Cánh diều
- Giải sgk Hoạt động trải nghiệm 12 – Cánh diều