Computer >> Máy Tính >  >> Lập trình >> Lập trình

Cây nhị phân có luồng trong cấu trúc dữ liệu


Ở đây chúng ta sẽ thấy cấu trúc dữ liệu cây nhị phân phân luồng. Chúng ta biết rằng các nút cây nhị phân có thể có nhiều nhất là hai nút con. Nhưng nếu họ chỉ có một phần tử con hoặc không có phần tử con nào, thì phần liên kết trong biểu diễn danh sách liên kết sẽ không có giá trị. Sử dụng biểu diễn cây nhị phân theo luồng, chúng ta có thể sử dụng lại các liên kết trống đó bằng cách tạo một số luồng.

Nếu một nút có một số vùng con bên trái hoặc bên phải còn trống, vùng đó sẽ được sử dụng làm luồng. Có hai loại cây nhị phân luồng. Cây luồng đơn hoặc cây nhị phân luồng hoàn toàn. Trong chế độ luồng đơn, có hai biến thể khác. Luồng trái và luồng phải.

Trong chế độ luồng bên trái nếu một số nút không có nút con bên trái, thì con trỏ bên trái sẽ trỏ đến nút con nhỏ hơn của nó, tương tự trong chế độ luồng bên phải nếu một số nút không có nút con bên phải, thì con trỏ bên phải sẽ trỏ đến người kế nhiệm nhỏ hơn của nó. Trong cả hai trường hợp, nếu không có người kế nhiệm hoặc người tiền nhiệm, thì nó sẽ trỏ đến nút tiêu đề.

Đối với cây nhị phân hoàn toàn luồng, mỗi nút có năm trường. Ba trường giống như nút cây nhị phân bình thường, hai trường khác để lưu trữ giá trị Boolean để biểu thị liệu liên kết của phía đó là liên kết thực tế hay chuỗi.

Cờ luồng bên trái Liên kết trái Dữ liệu Liên kết Phải Cờ Chủ đề Phải

Cây nhị phân có luồng trong cấu trúc dữ liệu

Đây là các ví dụ về cây luồng trái và phải

Cây nhị phân có luồng trong cấu trúc dữ liệu

Đây là cây nhị phân hoàn toàn theo luồng

Cây nhị phân có luồng trong cấu trúc dữ liệu