關於樹的乙個小總結

2021-08-21 07:26:27 字數 2253 閱讀 5507

/*樹*/

/*注:*s與s的區別

*s為指標,可以隨意改變大小 但是內容不得改變

s為陣列,且不能改變大小 內容可以隨意改變*/

/*(1)遍歷*/

/*#include

#include

#include

using namespace std;

const int max_size=100;

struct treenode

;class tree

~tree(){}

treenode *creat(char *s)//構造樹

return node;

}void prepop(treenode *root)//前序輸出

coutprepop(root->left);

prepop(root->right);

}void inpop(treenode *root)//中序輸出

inpop(root->left);

coutinpop(root->right);

}void postpop(treenode *root)

postpop(root->left);

postpop(root->right);

cout}void leverpop(treenode *root)//層序 利用入棧,出棧,這時候不是字串,而是,結構體

if(tree->right!=null)}}

};int main()

;class tree

~tree(){}

treenode *creat(char *s)

return root;

}void prepop(treenode *root)//前序 利用入棧 出棧

};int main()

*//*3.哈夫曼樹及哈弗曼編碼*/

/*定義:

1.哈夫曼樹:帶權路徑長度最小的二叉樹

2.做法:

首先,先定義乙個結構體(包含它的父,左,右)

其次,在定義乙個結構體(包含它的權值和哈夫曼編碼)

然後,找到最小的兩個權值,改變他們的父,以及增加乙個element(其權值為兩個最小權值的和,左(為小)右(為大)

最後,輸出*/

#include

#include

#include

#include//這個標頭檔案是宣告一些 「流操作符」的

//比較常用的有:setw(int);//設定顯示寬度,left//right//設定左右對齊。 setprecision(int);//設定浮點數的精確度。

/*或者可以用#include包含所有c++標頭檔案*/

using namespace std;

typedef struct treecode

;typedef struct treenode

;void select(treenode  a,int &s1,int &s2,int n)

}for (int i = 0; i < n; i++)// s1為權值最小的下標

for (int j = 0; j < n; j++)

}for (int j = 0; j < n; j++)// s2為另乙個權值最小的結點

}void huffmantree(treenode tree,int l,int str)

for(int i=0;ifor(int i=l;i<2*l-1;i++)

}void bulidcode(treecode treecode,treenode tree,int l)

else

p.start--;

c=s;

s=tree[c].parent;

}for(int j=p.start+1;jtreecode[i].start=p.start;}}

void print(treenode root,treecode treecode,int l)

cout<}for(int i=l;i}int main()

;int l=sizeof(str)/sizeof(str[0]);

treenode *tree=new treenode [2*l-1];

huffmantree(tree,l,str);

treecode *treecode=new treecode [2*l-1];

bulidcode(treecode,tree,l);

print(tree,treecode,l);

}

關於用MUI開發APP的乙個小總結

總結一點問題 一,關於固定定位的問題 其實在ios下固定定位並不穩定,特別是在使用者輸入內容的時候,固定定位就會出問題,其實我是比較想用絕對定位來模擬固定定位的,但是因為很多東西不是很熟悉,加上mui框架都是這麼用固定定位的,所以這種小bug我也就沒管了 二,沉浸式導航的問題 在我們做沉浸式導航的時...

乙個關於博士的小故事

下面是我看到的乙個小故事,也許已經很舊了,但是很有教育意義,覺得不錯就發上來了。有乙個博士分到一家研究所,成為學歷最高的乙個人。有一天他到單位後面的小池塘去釣魚,正好正副所長在他的一左一右,也在釣魚。他只是微微點了點頭,這兩個本科生,有啥好聊的呢?不一會兒,正所長放下釣竿,伸伸懶腰,蹭蹭蹭從水面上如...

關於vim,ctags的乙個小技巧

關於vim,ctags的乙個小技巧 vim可以使用ctags製作的tags檔案來瀏覽程式原始檔。問題是,當原始檔存放在目錄樹 也就是所謂的source tree 的時候,該怎麼辦呢?在預設情況下,ctags只會處理當前目錄裡的原始檔,而且vim也只會參考當前目錄的tags檔案。這時候,如果當前目錄裡...