Mục lục:

Làm cách nào để bạn triển khai cây tìm kiếm nhị phân trong Java?
Làm cách nào để bạn triển khai cây tìm kiếm nhị phân trong Java?

Video: Làm cách nào để bạn triển khai cây tìm kiếm nhị phân trong Java?

Video: Làm cách nào để bạn triển khai cây tìm kiếm nhị phân trong Java?
Video: 410 - Java - Binary Search Tree - Cây nhị phân - Chuẩn bị các classes + sườn bài 2024, Tháng mười hai
Anonim

Triển khai Cây tìm kiếm nhị phân (BST) trong Java

  1. Cây con bên trái của một nút chỉ chứa các nút có khóa nhỏ hơn khóa của nút đó.
  2. Cây con bên phải của một nút chỉ chứa các nút có khóa lớn hơn khóa của nút đó.
  3. Cây con bên trái và bên phải mỗi cây cũng phải là một cây tìm kiếm nhị phân .
  4. Không được có các nút trùng lặp.

Ngoài ra câu hỏi là, tìm kiếm nhị phân được thực hiện như thế nào trong Java?

Hãy xem một ví dụ về tìm kiếm nhị phân trong java nơi chúng ta sẽ tìm kiếm một phần tử từ một mảng bằng cách sử dụng đệ quy

  1. lớp BinarySearchExample1 {
  2. public static int binarySearch (int arr , int first, int last, int key) {
  3. if (last> = first) {
  4. int mid = first + (last - đầu tiên) / 2;
  5. if (arr [mid] == key) {
  6. trở về giữa;
  7. }

Thứ hai, chúng ta sử dụng cây tìm kiếm nhị phân ở đâu? Cây tìm kiếm nhị phân - Đã sử dụng trong nhiều Tìm kiếm các ứng dụng nơi dữ liệu liên tục vào / ra, chẳng hạn như bản đồ và các đối tượng tập hợp trong các thư viện của nhiều ngôn ngữ. Nhị phân Phân vùng không gian - Đã sử dụng trong hầu hết mọi trò chơi video 3D để xác định đối tượng nào cần được hiển thị.

Chỉ vậy, cây nhị phân được hình thành như thế nào?

Tạo cây nhị phân bằng cách sử dụng đệ quy

  1. Đọc dữ liệu trong x.
  2. Cấp phát bộ nhớ cho một nút mới và lưu trữ địa chỉ trong con trỏ p.
  3. Lưu trữ dữ liệu x trong nút p.
  4. Tạo đệ quy cây con bên trái của p và biến nó thành cây con bên trái của p.
  5. Đệ quy tạo cây con bên phải của p và biến nó thành cây con bên phải của p.

Độ phức tạp của tìm kiếm nhị phân là gì?

Tìm kiếm nhị phân chạy vào thời điểm lôgarit xấu nhất, thực hiện so sánh O (log n), trong đó n là số phần tử trong mảng, O là ký hiệu O lớn và log là lôgarit. Tìm kiếm nhị phân nhận không gian không đổi (O (1)), nghĩa là không gian mà thuật toán lấy là giống nhau đối với bất kỳ số phần tử nào trong mảng.

Đề xuất: