亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C++ > 正文

C++基于遞歸和非遞歸算法求二叉樹鏡像的方法

2020-01-26 14:09:23
字體:
來源:轉載
供稿:網友

本文實例講述了C++基于遞歸和非遞歸算法求二叉樹鏡像的方法。分享給大家供大家參考,具體如下:

/*求二叉樹鏡像 -- 采用遞歸和非遞歸方法經調試可運行源碼及分析如下:***/#include <stdlib.h>#include <iostream>#include <queue>using std::cout;using std::cin;using std::endl;using std::queue;/*二叉樹結點定義*/typedef struct BTreeNode{  char elem;  struct BTreeNode *pleft;  struct BTreeNode *pright;}BTreeNode;/*求二叉樹鏡像遞歸方式步驟:如果proot為NULL,則為空樹,返回;如果proot不為NULL,交換proot左右結點,然后分別求左右子樹的鏡像;*//*遞歸求二叉樹鏡像*/void get_bitree_mirror(BTreeNode* proot){  if (proot == NULL)    return ;  BTreeNode* temp_node = proot->pleft;  proot->pleft = proot->pright;  proot->pright = temp_node;  get_bitree_mirror(proot->pleft);  get_bitree_mirror(proot->pright);  return ;}/*非遞歸方式步驟如下:借助隊列首先,將根節點proot入隊;第一步:當隊列非空時,獲取當前層次的節點總數,即當前隊列的長度;執行第二步;第二步:按照當前層的節點總數,出隊進行遍歷節點,在遍歷時,    交換左右節點,如果左右節點存在,則入隊;    當遍歷完當前層所有節點時,遍歷下一層,執行第一步。*/void get_bitree_mirror_leveltraverse(BTreeNode* proot){  if(proot == NULL)    return ;  queue <BTreeNode*> que;  que.push(proot);  int level_nodes_number = 0;  while (!que.empty())//層次遍歷  {    level_nodes_number = que.size();    int level_count = 0;    while (level_count < level_nodes_number)    {      ++level_count;      proot = que.front();      que.pop();      //交換左右子節點      BTreeNode* temp_node = proot->pleft;      proot->pleft = proot->pright;      proot->pright = temp_node;      if(proot->pleft != NULL)        que.push(proot->pleft);      if(proot->pright != NULL)        que.push(proot->pright);    }  }  return ;}/*初始化二叉樹根節點*/BTreeNode* btree_init(BTreeNode* &bt){  bt = NULL;  return bt;}/*先序創建二叉樹*/void pre_crt_tree(BTreeNode* &bt){  char ch;  cin >> ch;  if (ch == '#')  {    bt = NULL;  }  else  {    bt = new BTreeNode;    bt->elem = ch;    pre_crt_tree(bt->pleft);    pre_crt_tree(bt->pright);  }}/*先序遍歷*/void pre_order_traverse(BTreeNode* proot){  if(proot == NULL)    return;  cout<< proot->elem << " ";  pre_order_traverse(proot->pleft);  pre_order_traverse(proot->pright);  return;}int main(){  int tree_node_number = 0;  BTreeNode *bt;  btree_init(bt);//初始化根節點  pre_crt_tree(bt);//創建二叉樹  cout << "先序遍歷輸出如下:" << endl;  cout << "調用鏡像函數前:" << endl;  pre_order_traverse(bt);  cout << endl;  get_bitree_mirror(bt);  cout << "遞歸調用鏡像函數后:" << endl;  pre_order_traverse(bt);  cout << endl;  cout << "非遞歸調用鏡像函數后:" << endl;  get_bitree_mirror_leveltraverse(bt);  pre_order_traverse(bt);  cout << endl;  system("pause");  return 0;}
/*運行結果:a b c # # # d e # # #------以上為輸入-----------------以下為輸出-----------先序遍歷輸出如下:調用鏡像函數前:a b c d e遞歸調用鏡像函數后:a d e b c非遞歸調用鏡像函數后:a b c d e請按任意鍵繼續. . .---------------------------------本例創建的二叉樹形狀:    a  b    dc     e調用遞歸求二叉樹鏡像形狀:   ad    b  e    c再次調用非遞歸求二叉樹鏡像形狀(即鏡像的鏡像):    a  b    dc     e*/

希望本文所述對大家C++程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩美女免费线视频| 国产精品一区二区电影| 色中色综合影院手机版在线观看| 亚洲国产91精品在线观看| 国产精品久久久久福利| 久久天天躁狠狠躁夜夜躁2014| 国产精品爽黄69| 精品久久久久久亚洲国产300| 国产日韩精品在线| 日韩欧美在线字幕| 亚洲最大福利网站| 亚洲精品视频网上网址在线观看| 日韩高清电影好看的电视剧电影| 欧美高清不卡在线| 2021久久精品国产99国产精品| 国产精品午夜一区二区欲梦| 日韩欧美在线国产| 欧美人与性动交a欧美精品| 亚洲人成在线观看网站高清| 精品久久久久久中文字幕大豆网| 日韩精品在线免费播放| 国产深夜精品福利| 91在线观看免费高清完整版在线观看| 91久久国产精品91久久性色| 日韩美女视频免费在线观看| 久久资源免费视频| 91chinesevideo永久地址| 亚洲天堂色网站| 欧美视频免费在线| 欧美成人自拍视频| 98精品在线视频| 亚洲a一级视频| 国产精自产拍久久久久久| 国产精品av网站| 丁香五六月婷婷久久激情| 国产精品视频一区二区高潮| 欧美性jizz18性欧美| 国产精品人成电影| 午夜免费日韩视频| 热草久综合在线| 日韩小视频在线观看| 综合激情国产一区| 欧美成人精品在线播放| 亚洲影院高清在线| 国语对白做受69| 日韩美女在线看| 亚洲欧洲在线免费| 国产日韩换脸av一区在线观看| 国产精品亚洲综合天堂夜夜| 97国产在线观看| 欧美成人激情视频| 欧美福利视频网站| 欧美美女18p| 97国产精品久久| 国产精品高清免费在线观看| 一夜七次郎国产精品亚洲| 亚洲成人激情在线观看| 国产69精品久久久久久| 亚洲欧美中文字幕在线一区| 欧美性xxxx极品hd满灌| 亚洲新中文字幕| 韩剧1988免费观看全集| 欧美亚洲另类视频| 红桃视频成人在线观看| 亚洲美女精品成人在线视频| 日韩电影免费观看中文字幕| 亚洲国模精品一区| 国内精品伊人久久| 91久久久久久久久久久| 久久久精品亚洲| 亚洲夜晚福利在线观看| 亚洲偷欧美偷国内偷| 高清欧美一区二区三区| 久久成年人视频| 国产精品7m视频| 国产成人久久久精品一区| 久久久国产精彩视频美女艺术照福利| 69**夜色精品国产69乱| 97**国产露脸精品国产| 欧美色图在线视频| 日韩成人av网| 一本大道香蕉久在线播放29| 亚洲一级黄色片| 国产精品久久综合av爱欲tv| 日本久久久a级免费| 久青草国产97香蕉在线视频| 最近中文字幕mv在线一区二区三区四区| 欧美日韩免费看| 日本不卡视频在线播放| 国产精品美女网站| 午夜精品福利电影| 欧美在线视频播放| 黑人巨大精品欧美一区免费视频| 久久久免费观看| 成人妇女免费播放久久久| 亚洲精品欧美日韩| 亚洲福利视频久久| 97精品免费视频| 国产精品av免费在线观看| 日韩人体视频一二区| 伊人久久男人天堂| 欧美日韩综合视频| 国产精品美女999| 久久精品国产清自在天天线| 欧美日韩中文在线| 97久久久免费福利网址| 亚洲淫片在线视频| 国产欧美一区二区白浆黑人| 亚洲成人精品视频在线观看| 91高清视频在线免费观看| 4438全国成人免费| 国产91精品久久久久久久| 国产视频观看一区| 亚洲精品一区av在线播放| 精品激情国产视频| 日韩成人中文电影| 57pao国产成人免费| 国产精品av在线播放| 欧美孕妇与黑人孕交| www.欧美精品一二三区| 97国产suv精品一区二区62| 亚洲精品免费一区二区三区| 97视频在线观看成人| 欧美一区亚洲一区| 播播国产欧美激情| 亚洲精品一区二区三区不| 国产欧美亚洲视频| 草民午夜欧美限制a级福利片| 在线看福利67194| 中文字幕欧美日韩在线| 日韩av在线影院| 成人两性免费视频| 亚洲女人天堂av| 亚洲一区二区三区乱码aⅴ| 久久久av亚洲男天堂| 国产一区二区免费| 性日韩欧美在线视频| 国产91精品不卡视频| 精品久久久久久久久久| 久久久在线观看| 欧美电影在线观看完整版| 亚洲人精品午夜在线观看| 日韩欧美在线视频| 97免费视频在线播放| 欧美极品在线播放| 日韩最新免费不卡| 日韩欧美亚洲成人| 国产精品永久免费| 国产91久久婷婷一区二区| 欧美中文字幕第一页| 久久成人精品一区二区三区| 日本人成精品视频在线| 欧美中文字幕视频在线观看| 欧美激情视频一区二区| 亚洲一区美女视频在线观看免费| 91中文精品字幕在线视频| 亚洲性夜色噜噜噜7777| 欧美最猛性xxxxx(亚洲精品)| 亚洲性视频网站| 成人黄色免费片| 在线视频日韩精品| 国模叶桐国产精品一区| 国产一区二区三区网站| 国产精品香蕉在线观看|