题目:输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表。要求不能创建任何新的结点,只调整指针的指向。
比如将二元查找树
10
/ \
6 14
/ \ / \
4 8 12 16
转换成双向链表
4=6=8=10=12=14=16。
大思路是:中序遍历。
小思路: 把二叉树的左右孩子看成双链表中的联系两边借点的东东。 最开始双链表是空的。
class Node{
public int currentVal;
public Node left;
public Node right;
}
public Node covertNodeAndGetFirstList(Node currentNode,Node lastListNode){
if(currentNode==null){
while(lastListNode.left!=null){
lastListNode = lastListNode.left;
}
return lastListNode;
}
if(currentNode.left != null){
covertNode(currentNode.left , lastListNode);
}
currentNode.left = lastListNode;
if(lastListNode !=null)
lastListNode.rigth = currentNode;
lastListNode = currrentNode;
if(currentNode.rigth!=null){
covertNode(currentNode.right,lastListNode);
}
}
分享到:
相关推荐
文件递归-XML递归-树图递归 面试中的常见递归算法:附带截图和详细代码
c++代码-递归-快速排序
在双向链表上实现快速排序的递归算法 输入的形式:元素个数、元素都为整型。 输入值范围:元素个数为非负正整数,需要排序的元素都为整型。 输出的形式:排序前的元素序列和排序后的元素序列。 程序的功能:对用户...
递归,可以实现多位数组的图像显示.......
C 排序 数据结构 链表 堆排序 希尔排序 快速排序 递归排序。详细解释了每个排序方法原理,并带有程序代码。是学习C语言的绝好资料
树 * 字典树 * 遍历-层次遍历 * 遍历-中序遍历-非递归 ...* 二叉查找树-从有序链表构造平衡的二叉查找树 * 二叉树-的最大深度 数组&字符串 查找排序 排列组合 动态规划 树 链表 数学 位运算 编程之美
【大纲】 0-1-课程内容和安排介绍 1-1-计算机的概念 1-2-程序设计语言概述 1-3-Python语言 1-4-Python开发环境配置 1-5-基本程序设计方法 1-6-理解问题的计算部分 1-7-温度转换程序实例 ...第6章-函数与递归-5-函数实例
【大纲】 0-1-课程内容和安排介绍 1-1-计算机的概念 1-2-程序设计语言概述 1-3-Python语言 1-4-Python开发环境配置 1-5-基本程序设计方法 1-6-理解问题的计算部分 1-7-温度转换程序实例 ...第6章-函数与递归-5-函数实例
包含各种类型的链表,例如简单链表、带头结点的链表、双向链表、合并链表、递归链表等。
【大纲】 0-1-课程内容和安排介绍 1-1-计算机的概念 1-2-程序设计语言概述 1-3-Python语言 1-4-Python开发环境配置 1-5-基本程序设计方法 1-6-理解问题的计算部分 1-7-温度转换程序实例 ...第6章-函数与递归-5-函数实例
【大纲】 0-1-课程内容和安排介绍 1-1-计算机的概念 1-2-程序设计语言概述 1-3-Python语言 1-4-Python开发环境配置 1-5-基本程序设计方法 1-6-理解问题的计算部分 1-7-温度转换程序实例 ...第6章-函数与递归-5-函数实例
基础算法-递归-杨鑫20191010.pptx,基础算法-递归-杨鑫20191010.pptx,基础算法-递归-杨鑫20191010.pptx
栈与递归--含分治与回溯.zip
n后问题---递归回溯法 n后问题---递归回溯法 n后问题---递归回溯法 n后问题---递归回溯法 n后问题---递归回溯法 n后问题---递归回溯法 n后问题---递归回溯法 n后问题---递归回溯法 n后问题---递归回溯法 n后问题---...
java语法 method 递归 马克-to-win java视频 方法 重载
数据结构:栈与递归--含分治与回溯.ppt
算法大全-面试题-链表-栈-二叉树-数据结构
C++ C++教程 C++源码 C++程序设计 教程 标准C++程序设计教程 源代码 计算器 递归 递归计算器
快速排序 非递归实现方式的完整源代码和测试结果。
人工智能课的一个作业,实现了汉诺塔-非递归-java代码,并附有实验说明、报告