資料結構之順序村村儲存二叉樹遍歷及堆排序

2022-08-24 00:30:10 字數 725 閱讀 1309

//大頂堆即是二叉數的節點越低他的值越大,假如節點的位置是i,他的左葉子節點是2*i+1,右葉子節點是2*i+2

static

int arr=new

int;

public

static

void frontshow(int

index)

system.out.println(arr[index]);

//查詢左節點2n+1

if(2*index+1<=arr.length-1)

//查詢右節點

if(2*index+2<=arr.length-1)

}public

static

void maxheap(intarr, int size,int

index)

if(rightindexarr[rightindex])

if(max!=index)

}public

static

void heapsort(int

... arr)

//將降序改為公升序

/**

for(int i=arr.length-1;i>=0;i--)

maxheap(arr,i,0);

}**/ }

public

static

void

main(string args)

資料結構之順序儲存二叉樹

從資料儲存來看,陣列儲存方式和樹的儲存方式可以相互轉換,即陣列可以轉換成樹,樹也可以轉換成陣列,看一下示意圖 順序儲存二叉樹的特點 1 順序儲存二叉樹通常只考慮完全二叉樹 2 第n個元素的左子節點為2n 1 3 第n個元素的右子節點為2n 2 4 第n個元素的父節點為 n 1 2 其中 n表示二叉樹...

資料結構 順序儲存二叉樹

include iostream using namespace std define max node size 100 二叉樹的最大節點數 typedef char sqbitree max node size 1 0號單元節點個數 建立二叉樹 void creat tree sqbitree ...

資料結構 解析二叉樹的順序儲存

二叉樹的儲存結構可以分為兩種 在上篇文章 資料結構 樹 二叉樹及四種遍歷解析實現 使用鏈式儲存二叉樹,這篇完成順序儲存 以陣列的方式存放二叉樹,要完成4種遍歷方式,需要陣列與樹結點存在對應關係 順序儲存二叉樹的特點 n表示陣列的下標,對應二叉樹的第幾個元素 如2,是陣列下標1,左子結點為2 1 1 ...