剑指offer 面试题27 二叉搜索树转换为排序双向链表
2014-12-25 11:30
615 查看
struct BinaryTreeNode{ int data; BinaryTreeNode *left; BinaryTreeNode *right; }; void Convert_core(BinaryTreeNode *pNode,BinaryTreeNode **pLastNode){ //handle left subtree if(pNode->left) Convert_core(pNode->left,pLastNode); //add pNode to the end of the lsit pNode->left=*pLastNode; if(*pLastNode) *pLastNode->right=pNode; *pLastNode=pNode; //handle right subtree if(pNode->right) Convert_core(pNode->right,pLastNode); } BinaryTreeNode* Convert(BinaryTreeNode *pRoot){ if(pRoot==NULL) return NULL; //get last node BinaryTreeNode *pLastNode=NULL; Convert_core(pRoot,&pLastNode); //get first node BinaryTreeNode *pFirstNode=pLastNode; while(pFirstNode->left){ pFirstNode=pFirstNode->left; } return pFirstNode; }
相关文章推荐
- 【面试题】剑指Offer-27-将二叉搜索树转换成排序的双向链表
- 剑指offer——面试题27:二叉搜索树与双向链表
- 剑指offer 面试题27 二叉搜索树与双向链表
- 剑指Offer面试题27(Java版):二叉搜索树与双向链表
- 剑指offer面试题[27]-二叉搜索树与双向链表
- 剑指offer解题报告(Java版)——二叉搜索树转换为双向链表 27
- 剑指offer 面试题27—二叉搜索树与双向链表
- 剑指Offer面试题27(Java版):二叉搜索树与双向链表
- 【剑指Offer学习】【面试题27:二叉搜索树与双向链表】
- [剑指offer]面试题27 二叉搜索树与双向链表
- 剑指Offer-面试题27:二叉搜索树与双向链表
- 剑指offer-面试题27-二叉搜索树与双向链表
- 剑指offer--面试题27:二叉搜索树与双向链表--Java实现
- 【剑指Offer学习】【面试题27:二叉搜索树与双向链表】
- 剑指offer解题报告(Java版)——二叉搜索树转换为双向链表 27
- 剑指offer之面试题27:二叉搜索树与双向链表
- 【剑指offer】4.4分解让复杂问题简单化——面试题27:二叉搜索树与双向链表
- 剑指Offer面试题26复杂链表的复制,面试题27二叉搜索树和双向链表(递归)
- 【剑指offer】面试题36:二叉搜索树与双向链表
- 【剑指Offer面试题】 九度OJ1503:二叉搜索树与双向链表