Tác giả cho em hỏi cái hình đầu tiên trên cùng có vẽ root internal leaf.

Em thấy F là root là đúng rồi. Còn khoanh vùng internal là không đúng

Vì A là leaf, C E H thì chính xác là lá.

Chào bạn Hung, rất cảm ơn bạn đã quan tâm tới bài viết và phát hiện ra sai sót, mình đã cập nhập lại bài viết.

Anh có thể viết chương trình C duyệt cây nhi phân NLR giống hình minh họa dùm em được không a. Em có cái đề tạo cây nhị phân sau đó duyệt cây nhị phân đến nút nào thì đổi màu ký tự và dừng lại 1 khoảng t.gian

Em có thể đặt hàng Nguyễn Đăng Khánh, nhưng trong trường hợp này, em nên liên hệ cá nhân. Còn việc em nhờ code như vậy, thì thật ra là không nên.

Anh ơi, cho em hỏi:

NODE* p = root;

NODE* f = p;

Chèn như vậy có mục đích gì vậy anh?

Với lại cuối cùng sao return lại f vậy anh?

Em hơi không hiểu 2 chỗ đó mong anh hướng dẫn lại giúp em ạ.

Em cảm ơn.

Vì root là node nắm toàn bộ cây, do đó dù code ra sao cũng phải cẩn thận, không thay đổi nó.

2 dòng code đó để lưu giữ node root vào f, trong quá trình duyệt sẽ sử dụng p để duyệt, f luôn là node cha của p. Nếu p là NULL, f là vị trí cần chèn. Do đó lưu giữ f và return giá trị này để trả về vị trí cần chèn.

Chúc em thành công.

Dạ em cảm ơn anh ạ :D

Chào tác giả, cái hàm search của anh hình như bị thiếu anh ạ, nếu chẳng may tìm đúng cái cây rỗng thì nó sẽ không biết return về cái gì.

Bạn đọc kĩ lần nữa đi :))

Nếu gỡ rối là quá trình của việc loại bỏ các lỗi phần mềm, thì sau đó lập trình phải là quá trình đưa nó vào. Larry Niven