高階資料結構c

2021-10-02 04:48:28 字數 1323 閱讀 1908

動態查詢字首和

vector<

int>bits;

//放樹狀陣列

int n;

//原陣列的大小+1表示樹狀陣列的大小,為什麼要+1呢,因為樹狀陣列多了乙個前0個數的和

intquery

(int x)

void

add(

int i,

int x)

}

功能比樹狀陣列多一點

const

int e=

100006

;struct qq

tree[

4*e]

;//線段樹要開4倍的點的個數

int n,t,a,b;

void

updata

(int l,

int r,

int root)

int mid=

(l+r)/2

;updata

(l,mid,root*2)

;updata

(mid+

1,r,root*2+

1); tree[root]

.maxx=

max(tree[root*2]

.maxx,tree[root*2+

1].maxx);}

intsearch

(int l,

int r,

int root)

————————————————

45374505

快速查單詞用的

class

trietree

void

insert

(string word_)

res = res-

>children_[c-

'a'];}

res-

>isword_ =

true;}

bool

search

(string word)

bool

startswith

(string prefix)

private

:struct trienode

// 初始化列表};

shared_ptr

find

(string& prefix)

return res;

} shared_ptr root_;

// 智慧型指標};

————————————————

95328117

高階資料結構

struct treenode treenode是經典的二叉樹節點,在資料的序列化和反序列按照層遍歷來處理的。以上二叉樹會被序列化為 1 root節點1,是第一層 2,3 然後第二層是2,3 4,第三層分別是2節點的兩個孩子節點空,用 來表示,然後3節點的左孩子為4,右孩子節點為 5 第四層4節點的...

高階資料結構

與普通佇列的區別 1.保證每次取出的元素時佇列中優先順序最高的 2.優先級別可自定義 場景 從雜亂無序的資料中按照一定的順序 或者優先順序 篩選資料 本質 1.二叉堆的結構,堆在英文裡叫binary heep 2.利用乙個陣列結構來實現完全二叉樹 特性 1.陣列裡的第乙個元素array 0 擁有最高...

C 高階資料結構 Trie樹

trie樹,又稱字典樹或字首樹,是一種有序的 用於統計 排序和儲存字串的資料結構,它與二叉查詢樹不同,關鍵字不是直接儲存在節點中,而是由節點在書中的位置決定。乙個節點的所有子孫都有相同的字首,也就是這個節點對應的字串,而根節點對應空字串。一般情況下,不是所有的節點都有對應的值,只有葉子節點和部分內部...