博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
二叉搜索树与双向链表
阅读量:6771 次
发布时间:2019-06-26

本文共 813 字,大约阅读时间需要 2 分钟。

void convertNode(BSTreeNode *root, BSTreeNode ** pLastNodeInList){    if(!root)        return ;    if(root->left)    {        convertNode(root->left, pLastNodeInList);    }    root->left = *pLastNodeInList;    if(*pLastNodeInList != NULL)        (*pLastNodeInList)->right = root;    *pLastNodeInList = root;    if(root->right)    {        convertNode(root->right, pLastNodeInList);    }}BSTreeNode *convert(BSTreeNode* root)//true = right, false = left{    if(!root)        return root;    BSTreeNode* pLastNodeInList = NULL;    convertNode(root, &pLastNodeInList);    while(pLastNodeInList && pLastNodeInList->left)    {        pLastNodeInList = pLastNodeInList->left;    }    return pLastNodeInList;}

输入一个二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。不能创建任何新的结点,只能调整树中结点指针的指向。

转载于:https://www.cnblogs.com/ddddddwwwxx/p/5771195.html

你可能感兴趣的文章
phpcms V9利用num++实现多样形式列表标签调用
查看>>
python3简单爬虫实现代码
查看>>
cocos 总结
查看>>
GWA2Perl研发:try-catch无法退出循环、方法传参引用传值及多数据库链接
查看>>
王爽《汇编语言》实验9
查看>>
WINDOWS下的SFTP服务器安装搭建
查看>>
linux tar打包解压详解 解压到指定文件夹
查看>>
JMS消息持久化,将ActiveMQ消息持久化到mySql数据库中
查看>>
一个简单的拆分URL的小程序
查看>>
学习TCP/IP的分层体系结构误区
查看>>
Ruby解析XML简单实现
查看>>
分布式系统常用思想和技术总结
查看>>
Java 创建证书
查看>>
判断访问端是手机还是电脑
查看>>
一文彻底搞懂面试中常问的各种“锁”
查看>>
java 出现unreachable statement异常
查看>>
Java多线程学习:多个线程间共享数据
查看>>
设计模式----状态模式
查看>>
mybatis mapper.xml文件中 小于"<" 和 大于">" 的问题
查看>>
【转】Java Crash原因汇总
查看>>