Example 1:

Input: root = [4,2,5,1,3]Output: [1,2,3,4,5]

思路:Inorder traverse,用stack做;记录一下first 和last node就可以了;最后返回dummpy.right;

错误点:没有想到用dummpy,作为cur node来用;

/*
// Definition for a Node.
class Node {public int val;public Node left;public Node right;public Node() {}public Node(int _val) {val = _val;}public Node(int _val,Node _left,Node _right) {val = _val;left = _left;right = _right;}
};
*/class Solution {public Node treeToDoublyList(Node root) {if(root == null) {return null;}Stack<Node> stack = new Stack<>();pushLeft(root, stack);Node first = null;Node last = null;Node pre = null;while(!stack.isEmpty()) {Node node = stack.pop();// get first;if(first == null) {first = node;}// get last;if(stack.isEmpty()) {last = node;}// connect middle node;if(pre != null) {pre.right = node;node.left = pre;}pre = node;if(node.right != null) {pushLeft(node.right, stack);}}first.left = last;last.right = first;return first;}private void pushLeft(Node node, Stack<Node> stack) {while(node != null) {stack.push(node);node = node.left;}}
}

Convert Binary Search Tree to Sorted Doubly Linked List相关推荐

  1. LeetCode 426. Convert Binary Search Tree to Sorted Doubly Linked List--转换二叉树为双向链表--Java,C++,Python解法

    题目地址:Convert Binary Search Tree to Sorted Doubly Linked List - LeetCode Convert a BST to a sorted ci ...

  2. leetcode -day19 Convert Sorted List to Binary Search Tree

    1.  Convert Sorted List to Binary Search Tree Given a singly linked list where elements are sorted ...

  3. LeetCode: 109. Convert Sorted List to Binary Search Tree

    题目 Given a singly linked list where elements are sorted in ascending order, convert it to a height b ...

  4. 【leetcode】109. Convert Sorted List to Binary Search Tree

    题目如下: Given a singly linked list where elements are sorted in ascending order, convert it to a heigh ...

  5. 【链表递归构造二叉树】LeetCode 109. Convert Sorted List to Binary Search Tree

    LeetCode 109. Convert Sorted List to Binary Search Tree Solution1:我的答案 偷鸡摸狗的做法 /*** Definition for s ...

  6. Convert Sorted Array to Binary Search Tree - LeetCode

    目录 题目链接 注意点 解法 小结 题目链接 Convert Sorted Array to Binary Search Tree - LeetCode 注意点 不要访问空结点 题目要求的是平衡二叉搜 ...

  7. LeetCode: Convert Sorted Array to Binary Search Tree 解题报告

    Convert Sorted Array to Binary Search Tree Given an array where elements are sorted in ascending ord ...

  8. 【数组递归构造二叉树】LeetCode 108. Convert Sorted Array to Binary Search Tree

    LeetCode 108. Convert Sorted Array to Binary Search Tree Solution1:我的答案 构造二叉树利用递归 /*** Definition fo ...

  9. 【LeetCode-面试算法经典-Java实现】【109-Convert Sorted List to Binary Search Tree(排序链表转换成二叉排序树)】...

    [109-Convert Sorted List to Binary Search Tree(排序链表转换成二叉排序树)] [LeetCode-面试算法经典-Java实现][全部题目文件夹索引] 原题 ...

  10. 二叉查找树(binary search tree)详解

    二叉查找树(Binary Search Tree),也称二叉排序树(binary sorted tree),是指一棵空树或者具有下列性质的二叉树: 若任意节点的左子树不空,则左子树上所有结点的值均小于 ...

最新文章

  1. python网络编程—TCP协议(一)
  2. 00018计算机应用基础2019年4月,2019年4月自考计算机应用基础考前试题和答案00018.pdf...
  3. PHP操作FTP类 (上传下载移动创建等)
  4. 矩阵的二范数_【专题】GAN(二)—— 目标函数的优化
  5. 万级 K8S 集群背后,etcd 如何保持稳定性?
  6. java并发(一):初探线程的创建
  7. 2440: [中山市选2011]完全平方数
  8. Luogu4113 [HEOI2012]采花
  9. 计算机数值方法第三版答案百度云,数值计算方法课后习题答案(李庆扬等)..doc...
  10. 如何测试计算机u口速度慢,如何解决电脑USB接口识别U盘速度缓慢
  11. DDI(DNS、DHCP和IPAM)解决方案的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  12. 离线高清卫星地图SDK及解决方案
  13. 青少年计算机编程少儿编程小学生编程是否适合
  14. 中小企业的需求管理软件都有哪些
  15. Opengl ES之矩阵变换
  16. Vue 适配iOS、Android顶部状态栏(沉浸式,混合APP开发)
  17. 【Python语言基础】——Python NumPy 数组副本 vs 视图
  18. 区块链目前实际的应用场景汇总
  19. gstreamer学习笔记---v4l2src
  20. java生成有理数_java-00设计-有理数类

热门文章

  1. TeamViewer设备数量受限的解决办法
  2. 2022年Web前端开发流程和学习路线
  3. 实现Promise的resolve/reject/then/all/race/finally/catch方法
  4. yyds,Python爬虫从小白到Bigboss全套学习路线+视频+资料
  5. PDF文件不能正常显示问题的原因及解决方法(图文)
  6. 《新年Flag》2019年“新年Flag” - 新目标 学习计划
  7. 计算机毕业设计android的酒店客房预订客户端app(源码+系统+mysql数据库+Lw文档)
  8. TOM企业邮箱如何注册?
  9. 根据输入的姓氏,随机获取对应的男生和女生姓名
  10. 陈年老调-log4j(分环境配置+动态修改)