二叉搜索时与双向链表python_剑指Offer(二十六) 二叉搜索树和双向链表
题目描述
输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。
思路以及解答
主要是使用递归,设置一个head
和end
,head
只在第一次设置值,后面就是将end
的right
指向当前node
,将当前node
的left
指向end
,把end
指向当前的node
。
class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null;
public TreeNode(int val) { this.val = val;
}
}
public class Solution { // 头节点 public TreeNode head = null; // 尾节点 public TreeNode end = null;
public TreeNode Convert(TreeNode pRootOfTree) { invert(pRootOfTree); return head; }
public void invert(TreeNode node) { if (node == null) { return; } invert(node.left); if (end == null) { head = node; end =node; }else{ end.right = node; node.left = end; end =node; } invert(node.right); }}
此文章仅代表自己(本菜鸟)学习积累记录,或者学习笔记,如有侵权,请联系作者删除。人无完人,文章也一样,文笔稚嫩,在下不才,勿喷,如果有错误之处,还望指出,感激不尽~
技术之路不在一时,山高水长,纵使缓慢,驰而不息。
公众号:秦怀杂货店
【作者简介】:
秦怀,公众号【秦怀杂货店】作者,技术之路不在一时,山高水长,纵使缓慢,驰而不息。这个世界希望一切都很快,更快,但是我希望自己能走好每一步,写好每一篇文章,期待和你们一起交流。
此文章仅代表自己(本菜鸟)学习积累记录,或者学习笔记,如有侵权,请联系作者核实删除。人无完人,文章也一样,文笔稚嫩,在下不才,勿喷,如果有错误之处,还望指出,感激不尽~
二叉搜索时与双向链表python_剑指Offer(二十六) 二叉搜索树和双向链表相关推荐
- 剑指offer三十六之两个链表的第一个公共结点
一.题目 输入两个链表,找出它们的第一个公共结点. 二.思路 如果存在共同节点的话,那么从该节点,两个链表之后的元素都是相同的.也就是说两个链表从尾部往前到某个点,节点都是一样的.我们可以用两个栈分别 ...
- 剑指Offer - 九度1367 - 二叉搜索树的后序遍历序列
剑指Offer - 九度1367 - 二叉搜索树的后序遍历序列2013-11-23 03:16 题目描述: 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果.如果是则输出Yes,否则输出 ...
- 剑指Offer(十九):顺时针打印矩阵
剑指Offer(十九):顺时针打印矩阵 搜索微信公众号:'AI-ming3526'或者'计算机视觉这件小事' 获取更多算法.机器学习干货 csdn:https://blog.csdn.net/baid ...
- python 剑指offer 学习之路(二)
剑指offer 学习之路 合并两个排序的链表 树的子结构 顺时针打印矩阵 包含min函数的栈 从上往下打印二叉树 二叉搜索树的后序遍历序列 二叉树中和为某一值的路径 复杂链表的复制 数组中出现次数超过 ...
- 二维数组的空间复杂度_剑指 offer 面试题精选图解 04 . 二维数组中的查找
点击关注上方"图解面试算法", 设为"置顶或星标",一起刷 LeetCode. 作者:程序员吴师兄 今天分享的题目来源于 LeetCode 上的剑指 Offer ...
- 剑指offer刷题 04. 二维数组中的查找
剑指 Offer 04. 二维数组中的查找 1. 问题描述 在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个高效的函数,输入这样的一 ...
- Leetcode刷题笔记——剑指offer II (六)【图】
文章目录 图 695. 岛屿的最大面积 剑指 Offer II 106. 二分图 (每条边的两个结点都来自不同的集合) 剑指 Offer II 107. 矩阵中的距离 (最短路问题,建图,BFS) 剑 ...
- 剑指Offer第十天——T46——动态规划
剑指OfferT46 题目描述 给定一个数字,我们按照如下规则把它翻译为字符串:0 翻译成 "a" ,1 翻译成 "b",--,11 翻译成 "l&q ...
- 《剑指Offer》36:二叉搜索树与双向链表
题目 输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表.要求不能创建任何新的节点,只能调整树中节点指针的指向.比如,输入下图中的二叉搜索树,输出转换之后的排序双向链表. 二叉树节点的定义如下 ...
最新文章
- Nginx 高可用集群解决方案 Nginx + Keepalived
- sigmoid函数求导与自然指数
- css3动画之——动态的省略号
- 基于ServletJsp的网上书店设计(三)
- Golang的单引号、双引号与反引号
- 高性能的MySQL(2)慢查询
- Hello HarmonyOS,HarmonyOS鸿蒙实现HelloWorld应用开发E2E体验
- okhttp3 ExceptionInInitializerError 异常处理
- python 中decorator和property
- KORG Opsix Native Mac - 音频数字合成器
- CE修改器教程总结2
- springmvc-带预览的异步上传图片功能
- 计算机专业考研 数学分析,(NEW)中山大学数据科学与计算机学院数学分析(A)历年考研真题汇编.pdf...
- Windows Server 2008 R2 企业版操作说明手册
- 在OpenCV里实现Prewitt算子
- 详解boost库中的Message Queue
- 图的常见衡量指标及算法调研
- STP的端口状态,BPDU,计时器
- 太真实,北上广深年薪20W、30W、40W的程序员的生活状态!
- python编写程序输出诗句_Python一日一练02----诗词生成器
热门文章
- [渝粤教育] 郑州航空工业管理学院 电工电子技术基础 参考 资料
- 【渝粤教育】国家开放大学2018年春季 0222-22T模拟电子电路 参考试题
- 【渝粤教育】广东开放大学 房屋建筑学 形成性考核 (50)
- 【渝粤教育】电大中专会计电算化作业 题库
- mysql存储过程语法 if_mysql存储过程语法 if
- 数字信号处理基础知识00
- python编程语言优缺点_原创001 第一次接触这个神奇而又无所不能的编程语言:Python...
- java时间日期格式器_JAVA基础类库(二)-----日期、时间类和格式器
- 富贵不压重发_为什么老人常说“贵人不顶重发”,“重发”是什么意思? ?...
- 全国计算机三级数据库技术选择题,全国计算机三级《数据库技术》选择题训练2016...