程式設計練習 複習一下樹的遍歷

2022-05-14 18:52:21 字數 2035 閱讀 5443

深度有限遍歷記錄層數:增加乙個level

//深度優先遍歷

void depthfirstsearch(tree root)

if(node->lchild)

}}

#include #include #include #include using namespace std;

typedef struct bitnode bitnode,*bitree;

int createbitree(bitree &t) else

return 0;

}void visit(bitree t)

}void preorder(bitree t)

}void inorder(bitree t)

}void postorder(bitree t)

}void preorder2(bitree t) else

}}void inorder2(bitree t) else

}}typedef struct bitnodepost bitnodepost,*bitreepost;

void postorder2(bitree t)

while (!stack.empty() && (stack.top())->tag == 'r')

if (!stack.empty())

}}void levelorder(bitree t)

if (p->rchild != null)

}}int main()

//abc##de#g##f###

//先序遍歷 :a b c d e g f

//先序遍歷(非遞迴):a b c d e g f

////中序遍歷 :c b e g d f a

//中序遍歷(非遞迴):c b e g d f a

////後序遍歷 :c g e f d b a

//後序遍歷(非遞迴):c g e f d b a

////層次遍歷 :a b c d e f g

///// a

/// /

/// b

/// / \

/// c d

/// / \

/// e f

/// \

/// g

深度優先遍歷:

//深度優先遍歷

void depthfirstsearch(tree root)

if(node->lchild)

}}

/**

* */

#include #include #include #include #include using namespace std;

#define element char

#define format "%c"

typedef struct node *tree;

int index = 0; //全域性索引變數

//二叉樹構造器,按先序遍歷順序構造二叉樹

//無左子樹或右子樹用'#'表示

void treenodeconstructor(tree &root, element data)else

}//深度優先遍歷

void depthfirstsearch(tree root)

if(node->lchild)

}}//廣度優先遍歷

void breadthfirstsearch(tree root)

if(node->rchild)

}}

廣度優先遍歷:

//廣度優先遍歷

void breadthfirstsearch(tree root)

if(node->rchild)

}}

完整**:

複習一下MSIL的一些問題

前陣子俺一直沉迷在遊戲和 中,最近玩累了。於是回過頭來,突然發現有些東西感覺就像抓不住的水一樣就要被淡忘了。也許是需要複習一下了,可不能把以前學的全忘光了 當然,以我的懶惰,所謂的複習也就 基本是隨興複習,沒什麼計畫的亂來了。msil和堆疊形影不離,兩者的關係就像手術室中的醫生和 醫生負責動手術 部...

複習補充一下以前學習的HTML CSS的內容(一)

1.沒有內容的 html 元素被稱為空元素。空元素是在開始標籤中關閉的。在開始標籤中新增斜槓,比如 是關閉空元素的正確方法,html xhtml 和 xml 都接受這種方式。即使 在所有瀏覽器中都是有效的,但使用 其實是更長遠的保障。2.html 標籤對大小寫不敏感 等同於 許多 都使用大寫的 ht...

改造一下jeecg中的部門樹

關於 jeecg 提供的部門樹,相信很多小夥伴都已經用過了,今天假裝有那麼乙個需求 部門樹彈窗選擇預設展開下級部門 帶著這個需求再次去探索一下吧。片段 t departselect 關於selectednamesinputid與selectedidsinputid屬性 使用 t departsele...