演算法複習筆記 BST

2021-07-10 13:10:36 字數 763 閱讀 8952

二叉樹是一種能夠將鍊錶插入的靈活性和有序陣列查詢的高效性結合起來的資料結構實現,這個資料結構主要是由一些節點構成。

//
節點包含的鏈結可以為null或者指向其他節點,在二叉樹中,每個節點最多只能有乙個父節點,而且每個節點都有左右兩個子節點,如果把節點指向的位置看成另一顆二叉樹,則乙個根節點指向的就是它的左右子樹。

節點的定義為乙個鍵,乙個值,兩個左右子節點

public calss node

};

二叉樹的定義和方法的定義

public

class bst

intget(node x,int key)

void put(int key,int

value)

node puthelp(node x,int key,int

value)

int min()

node minhelp(node x)

int floor(int key)

node floorhelp(node x,int key)//找出小於等於key的最大鍵

void deletemin()//刪除樹中最小元素,刪除最大元素只需要交換一下左右子樹即可

node deletminhelp(node x)

void delete(int key)

node deletehelp(node x,int key)

}

BST學習筆記

序言本文的作者是在不知道stl直接提供了可用的bst下學習的bst,所以嫌麻煩的話可以直接使用stl 逃 概念二叉搜尋樹bst binary search tree 是一顆二叉樹,它的每個內部節點都關聯乙個關鍵字,並具有以下性質 任意節點的關鍵字大於 或等於 該節點左子樹中所有節點的關鍵字,小於 或...

排序演算法複習筆記

排序演算法一般都會有幾個較為基礎通用的方法,如下表 方法名作用 issorted 判斷陣列是否有序 less int item1,int item2 比較第乙個引數是否小於等於第二個引數 exch int a,int b 交換這兩個索引位置的元素 show 列印陣列 sort 具體待實現的排序演算法...

演算法複習筆記 緒論

這兩天開始準備考研了,才回到 演算法與資料結構,班裡就我乙個人選這門了,其他都選 自然地理.要做 如果不選 演算法與資料結構,就沒有意義了.一段時間以來,都把 演算法和資料結構看得很重要了.所以這次要全力,定心,好好理解.一,從問題到程式 1,需求模型 2,數學模型 3,實現模型 程式中描述的過程 ...