CÂY NHỊ PHÂN LÀ GÌ

Giới thiệu Mở đầu Mảng và nhỏ trỏ Mảng tĩnh Mảng động Con trỏ Sơ đồ vật bộ nhớ trong những chương trình C Danh sách liên kết Cấp phát hễ Danh sách links đối kháng Danh sách liên kết kép Cây nhị phân Khái niệm cấu trúc dữ liệu dạng cây Cây nhị phân Duyệt cây theo chiều rộng lớn Duyệt cây theo chiều sâu Cây tìm kiếm nhị phân Cây tìm kiếm nhị phân Cây cân nặng bằng - AVL Tree Cây cân bằng Ngăn uống xếp Ngnạp năng lượng xếp Hàng đợi Hàng đợi

Giới thiệu về cây nhị phân

*

Hình 1: Cây nhị phân

Nhỏng đang nói về quan niệm cây làm việc bài xích trước. Thì cây nhị phân (binary tree) chính là cây bao gồm bậc là 2. có nghĩa là ngẫu nhiên node nào vào cây sẽ sở hữu được bậc về tối nhiều là nhì.

Hầu không còn loại có mang của cây nhị phân tương đương hoàn toàn với tư tưởng phổ biến của cây như (nhánh vào, nhánh ra, node lá, node gốc, node trong, nút của một node, mức của cây, chiều lâu năm lối đi cho tới một node, chiều dài đường đi của cả cây, node tiền bối, node hậu bối, node phụ vương, node con, độ cao của một node, độ cao của cây ...)

Một số có mang khác chỉ lâu dài với cây nhị phân sẽ là cây nhị phân không thiếu thốn (full binary tree) và cây nhị phân hoàn thành xong (complete binary tree).

Bạn đang xem: Cây nhị phân là gì

Cây nhị phân không thiếu là cây nhị phân cơ mà từng node trong cây gồm đúng chuẩn hoặc 0 hoăc 2 bé.

*

Hình 2: Cây nhị phân đầy đủ

Gọi N là số node ,H là chiều cao, và E là hệ số cân bằng của một cây nhị phân.

Với chú ý rằng:

H = -một trong các trường hợp cây rỗngH = 0 trong trường hợp cây có duy nhất 1 node

Ta có những kết luận sau:

Quan hệ giữa N và H

Mô tả

Hmax =N- 1

Trường hợp này xảy ra khi cây nhị phân suy biến thành cây dạng tuần tự - như thể với danh sách liên kết

Hmin =log2(N+ 1) -1

Trong trường hợp cây nhị phân hoàn thiện, ở mỗi mức đều có số lượng tối nhiều các node

Nmin =H+ 1

Trường hợp này xảy ra Lúc cây nhị phân suy đổi thành cây dạng tuần tự - như là với danh sách liên kết

Nmax= 2H + 1- 1

Trong trường hợp cây nhị phân hoàn thiện, ở mỗi mức đều có số lượng tối nhiều các node

E = HL- HR

Là sự chênh lệch chiều cao của cây nhỏ trái và cây con phải.

Một cây được coi là cân bằng lúc E = 0 hoặc -1 hoặc 1

Cây nhị phân trả thiện là cây mà từng node của chính nó có đúng 2 con (trừ node lá), và các node lá có cùng mức, Ta cũng sẽ thấy cây này có hệ số E = 0, tức là độ chênh lệch ở mọi node trong cây đều bằng 0.

Xem thêm: Registration: Online - Southern Arkansas University

*

Hình 3: Cây nhị phân hoàn thiện

Cây nhị phân hoàn thiện là cây rất đặc sắc. Nó cung cấp tỉ lệ xuất xắc nhất có thể mang đến hai thông số là tổng số node N và chiều cao H của cây.

Chiều cao H của một cây nhị phân hoàn thiện với N node có cực hiếm lớn nất là O(log N). Ta có thể chứng minh điều này bằng cách tính số node trên mỗi mức bắt nguồn từ node gốc. Ta có:

N = 1 + 2 + 4 + … + 2H-1+ 2H= 2H+1- 1

Tương ứng với:

H = log2(N + 1) - 1

Duyệt cây (Tree traversal)

Duyệt cây là một thao tác vô cùng quan tiền trọng đối với cấu trức dữ liệu cây. Cách duyệt cây là tiền đề quan trọng đến các thuật toán như tìm kiếm, tìm đường … về sau này.

Duyệt cây là cách trải qua tổng thể các node của cây theo một trình tự nhất định. khi duyệt qua một node ta đánh dấu node đó là đã duyệt và chỉ xử lý chúng một lần duy nhất.

Đối với danh sách liên kết thì ta phải thực hiện việc duyệt từ node đầu tới node cuối cùng. Với cây thì ta có nhiều pmùi hương pháp để duyệt rộng.

Có nhì cách duyệt cây phổ biến đó là:

Duyệt cây theo chiều rộng (Breadth-first traversal)Duyệt theo mức (level-order)Duyệt cây theo chiều sâu (Depth-first traversal)PreorderInorderPostorder

Để tìm phát âm rõ hơn về các cách duyệt cây bạn có thể clichồng vào các đường dẫn ở bên trên. Các bài học sẽ bao quát tổng quát về cách duyệt cây và cách xây dựng thuật toán duyệt cây với ngôn ngữ sử dụng là C/C++.

Nổ hũ club online uy tín
game đổi thưởng uy tín gamedoithuong88 | xo so ket qua
W88
| SUNCITYVN | jun88