剑指offer面试题[27]-二叉搜索树与双向链表
来源:互联网 发布:access sql limit 编辑:程序博客网 时间:2024/06/07 11:47
题目描述
输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。
/*struct TreeNode {int val;struct TreeNode *left;struct TreeNode *right;TreeNode(int x) :val(x), left(NULL), right(NULL) {}};*/class Solution {public: TreeNode* Convert(TreeNode* pRootOfTree) { TreeNode* pLastNodeInList=NULL; ConvertNode(pRootOfTree,&pLastNodeInList); TreeNode* pHeadOfList=pLastNodeInList; while(pHeadOfList!=NULL&&pHeadOfList->left!=NULL) pHeadOfList=pHeadOfList->left; return pHeadOfList; } void ConvertNode(TreeNode* pRootOfTree,TreeNode* *pLastNodeInList) { if(pRootOfTree==NULL) return; TreeNode* pCurrent=pRootOfTree; if(pCurrent->left!=NULL) ConvertNode(pCurrent->left,pLastNodeInList); pCurrent->left=*pLastNodeInList; if(*pLastNodeInList!=NULL) (*pLastNodeInList)->right=pCurrent; *pLastNodeInList=pCurrent; if(pCurrent->right!=NULL) ConvertNode(pCurrent->right,pLastNodeInList); }};
阅读全文
0 0
- [剑指offer][面试题27]二叉搜索树与双向链表
- [剑指offer]面试题27 二叉搜索树与双向链表
- 剑指Offer:面试题27 二叉搜索树与双向链表
- 《剑指Offer》 面试题27:二叉搜索树与双向链表
- 《剑指Offer》学习笔记--面试题27:二叉搜索树与双向链表
- 剑指offer 面试题27—二叉搜索树与双向链表
- 剑指offer--面试题27:二叉搜索树与双向链表--Java实现
- 【剑指Offer学习】【面试题27:二叉搜索树与双向链表】
- 剑指Offer面试题27(Java版):二叉搜索树与双向链表
- 剑指offer之面试题27:二叉搜索树与双向链表
- 剑指offer之面试题27二叉搜索树与双向链表
- 剑指Offer----面试题27:二叉搜索树与双向链表
- 剑指Offer-面试题27:二叉搜索树与双向链表
- 剑指Offer:面试题27——二叉搜索树与双向链表(java实现)
- 剑指offer面试题27:二叉搜索树与双向链表
- 剑指offer--面试题27:二叉搜索树与双向链表
- 剑指Offer面试题27(Java版):二叉搜索树与双向链表
- 剑指offer——面试题27:二叉搜索树与双向链表
- SVG动画demo
- 更好的方式运行php-fpm
- 链表的有序集合
- C语言实现斐波那契数列递归和非递归算法
- 卷积层
- 剑指offer面试题[27]-二叉搜索树与双向链表
- POJ3020-Antenna Placement 无向二分图 匈牙利算法 裸题
- 《机器学习实战》学习笔记-[9]-回归-加权最小二乘LWLR
- Servlet常用的六个对象
- 求二叉树结点最大距离
- 常用Socket函数详解
- 高斯相关内容
- 【计算机网络】网络诊断工具ping的模拟实现之具体细节
- (104)反射:获取Class的对象、构造函数、字段、方法。反射实例练习