程序员——算法讨论(一)
来源:互联网 发布:王小帮淘宝创业故事 编辑:程序博客网 时间:2024/06/03 21:52
题目:输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表。要求不能创建任何新的结点,只调整指针的指向。
比如将二元查找树 10
/ /
6 14
/ / / /
4 8 12 16
转换成双向链表
4=6=8=10=12=14=16
分析:利用中序遍历
template<class T>
void ConvertNode(node<T>* pNode, node<T>* & pLastNodeInList)
{
if (pNode->lp!=0)
ConvertNode(pNode->lp,pLastNodeInList);
pNode->lp=pLastNodeInList;
if (pLastNodeInList!=NULL)
{
pLastNodeInList->rp=pNode;
}
pLastNodeInList=pNode;
if(pNode->rp!=0)
ConvertNode(pNode->rp,pLastNodeInList);
}
template<class T>
node<T>* Convert_Solution1(node<T>* pHeadOfTree)
{
node<T> * plast=NULL, *ret_p=pHeadOfTree;
ConvertNode(pHeadOfTree,plast);
while(ret_p->lp!=0)
ret_p=ret_p->lp;
return ret_p;
}
- 程序员——算法讨论(一)
- 一算法求解与讨论
- USACO算法系列——讨论篇
- (一)@Input属性讨论
- 讨论:一种基于状态位图的SPIHT改进算法(2)——编解码程序
- 【算法】错排——错误引发的讨论
- 【算法】欧几里得——GCD引发的讨论
- 动手做ASP.NET 2.0服务器端控件——AutoCheckTreeView(一)功能讨论
- 算法讨论
- 算法(一)——算法特性
- 算法—RSA算法原理(一)
- 程序员学英语(欢迎讨论^_^)
- 关于Buddy(伙伴)算法的讨论
- 关于Buddy(伙伴)算法的讨论
- 黑马程序员——多线程(一)
- 黑马程序员——高新技术(一)
- 黑马程序员——多线程(一)
- 黑马程序员——高新技术(一)
- zen-cart 后台设置汇总一
- DW 操作数据库
- 用户控件和自定义的差别_1
- ODP.NET vs MSDP
- 常见js函数_1
- 程序员——算法讨论(一)
- IQ测试题
- DNS服务器地址
- 关于windows系统c++编译器GCC的安装方法
- asp.net结合flashpaper实现doc/pdf/ppt文档在线浏览
- word通配符的使用,以及去掉项目符号,以及函数指针,中断向量的一些杂问题
- 域名记录
- Trie树
- 生活bluesea