把二元查詢樹變成雙向鍊錶

2021-06-16 22:53:02 字數 663 閱讀 5312

輸入一棵二元查詢樹,將該二元查詢樹轉換成乙個排序的雙向鍊錶。

要求不能建立任何新的結點,只調整指標的指向。

#include struct bstreenode

;typedef bstreenode doublelist;

doublelist * phead;

doublelist * plistindex;

void converttodoublelist(bstreenode * pcurrent);

//建立二元查詢樹

void addbstreenode(bstreenode* &pcurrent, int value)

else

else if(value > pcurrent->m_nvalue)

else

converttodoublelist(pcurrent);

if(null != pcurrent->m_pright) }

//二叉樹轉換成list

void converttodoublelist(bstreenode * pcurrent)

else

plistindex = pcurrent;

cout

把二元查詢樹轉變成排序的雙向鍊錶

1.首先是如何建立乙個二叉查詢樹 2.再對二叉查詢樹進轉換 如下 bstreenode1.cpp 定義控制台應用程式的入口點。include stdafx.h include using namespace std struct bstreenode typedef bstreenode doubl...

把二元查詢樹轉變成排序的雙向鍊錶

把二元查詢樹轉變成排序的雙向鍊錶 題目 輸入一棵二元查詢樹,將該轉換成個排序的雙向鍊錶。要求不能建立任何新的結點,只調整指標向。include include typedef struct bittree bittree void addnode bittree root,int value p r...

把二元查詢樹轉變成排序的雙向鍊錶

這些演算法的思路很多我不會的話都參考了july演算法的思想,特此宣告一下,我只是給出我的具體實現 把二元查詢樹轉變成排序的雙向鍊錶 題目 輸入一棵二元查詢樹,將該二元查詢樹轉換成乙個排序的雙向鍊錶。要求不能建立任何新的結點,只調整指標的指向。10 6 14 4 8 12 16 轉換成雙向鍊錶 4 6...