Các ứng dụng của cây Tài liệu này được soạn theo sách Toán học rời rạc ứng dụng trong tin học, K.. Các ứng dụng của cây 2Cây tìm kiếm nhị phân – Cây tìm kiếm nhị phân: Cây nhị phân, tron
Trang 18.2 Các ứng dụng của cây
Tài liệu này được soạn theo sách Toán học rời rạc ứng dụng trong tin học, K H
Rosen, người dịch: Phạm Văn Thiều và Đặng Hữu Thịnh, Nhà xuất bản Khoa học
Trang 204/19/24 8.2 Các ứng dụng của cây 2
Cây tìm kiếm nhị phân
– Cây tìm kiếm nhị phân: Cây nhị phân, trong đó:
° mỗi con của một đỉnh hoặc là con bên phải hoặc là con bên trái, không có đỉnh nào có hơn một con bên phải hay con bên trái,
° mỗi đỉnh được gán một khoá;
° Khoá của đỉnh lớn hơn khoá của tất cả các đỉnh thuộc cây con bên trái, và nhỏ hơn khoá của tất cả các đỉnh thuộc cây con bên phải của nó
– Ví dụ 1 Tạo cây tìm kiếm nhị phân dùng thứ tự từ điển cho các
từ sau: mathematics, physics, geography, zoology, meteorology,
geology, psychology và chemistry.
Trang 3Cây tìm kiếm nhị phân: Xây dựng cây tìm kiếm nhị phân
Trang 404/19/24 8.2 Các ứng dụng của cây 4
Cây tìm kiếm nhị phân: Thuật toán tìm kiếm nhị phân
• v := gốc của T
• if x label(v) then
• else
Trang 5Cây tìm kiếm nhị phân
• Độ phức tạp
– Cây tìm kiếm nhị phân T ứng với n phần tử
– Xây dựng cây nhị phân đầy đủ U từ T bằng cách thêm vào T các
đỉnh không có nhãn sao cho mọi đỉnh có khoá đều có 2 con
– Số phép so sánh nhiều nhất để thêm phần tử mới là độ dài của
đường đi dài nhất trong U từ gốc tới một lá
° U có n đỉnh trong, (ii) Định lý 4 Chương 8.1 U có n + 1 lá
° Hệ quả 1 Chương 8.1 chiều cao của U log(n + 1)
Phải thực hiện ít nhất log(n + 1) phép so sánh để thêm phần tử mới vào cây
Nếu T là cân đối thì U là cân đối, Hệ quả 1 Chương 8.1
Trang 604/19/24 8.2 Các ứng dụng của cây 6
Cây tìm kiếm nhị phân
• Thêm các đỉnh không nhãn để tạo cây tìm kiếm nhị phân đầy đủ
Trang 7Cây quyết định
– Cây quyết định: cây có gốc, trong đó:
° mỗi đỉnh tương ứng với một quyết định, và mỗi cây con tại
các đỉnh này ứng với mỗi một kết cục có thể của quyết định – Ví dụ 2 Có bảy đồng xu, tất cả có trọng lượng như nhau, và một đồng giả có trọng lượng nhỏ hơn các đồng khác
° Nếu dùng một chiếc cân có có hai đĩa cân thì phải cần bao nhiêu lần cân để xác định đồng xu nào trong tám đồng xu này là đồng xu giả
° Hãy đề xuất một thuật toán tìm đồng xu giả
Trang 804/19/24 8.2 Các ứng dụng của cây 8
Cây quyết định
– Có 3 khả năng xảy ra mỗi lần cân:
° 1 Hai đĩa có trọng lượng bằng nhau
° 2 Đĩa thứ nhất nặng hơn
° 3 Đĩa thứ hai nặng hơn – Vậy cây quyết định cho một dãy các lần cân là cây 3-phân
° Cây quyết định có ít nhất 8 lá
° Số lần cân nhiều nhất để xác định đồng xu giả là chiều cao của cây quyết định
° Chiều cao của cây quyết định thoả
• h log m l = log3 8 = 2
Cần ít nhất 2 lần cân
° Có thể xác định đồng xu giả bằng 2 lần cân
Trang 9Cây quyết định
• Cây quyết định để xác định đồng xu giả