博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[LintCode] 378 Convert Binary Search Tree to Doubly Linked List 解题报告
阅读量:4646 次
发布时间:2019-06-09

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

Description

Convert a binary search tree to doubly linked list with in-order traversal.
Example
Given a binary search tree:
    4
   / \
  2   5
 / \
1   3
return 1<->2<->3<->4<->5

5/11/2017

算法班

直接iterative in order traversal

1 /** 2  * Definition of TreeNode: 3  * public class TreeNode { 4  *     public int val; 5  *     public TreeNode left, right; 6  *     public TreeNode(int val) { 7  *         this.val = val; 8  *         this.left = this.right = null; 9  *     }10  * }11  * Definition for Doubly-ListNode.12  * public class DoublyListNode {13  *     int val;14  *     DoublyListNode next, prev;15  *     DoublyListNode(int val) {16  *         this.val = val;17  *         this.next = this.prev = null;18  *     }19  * }20  */ 21 public class Solution {22     /**23      * @param root: The root of tree24      * @return: the head of doubly list node25      */26     public DoublyListNode bstToDoublyList(TreeNode root) {  27         // Write your code here28         if (root == null) return null;29 30         Stack
stack = new Stack
();31 TreeNode cur = root;32 DoublyListNode head = null;33 DoublyListNode prev = null;34 35 while (cur != null || !stack.empty()) {36 while (cur != null) {37 stack.push(cur);38 cur = cur.left;39 }40 cur = stack.pop();41 DoublyListNode node = new DoublyListNode(cur.val);42 if (head == null) {43 head = node;44 }45 node.prev = prev;46 if (prev != null) {47 prev.next = node;48 }49 cur = cur.right;50 prev = node;51 }52 return head;53 }54 }

 

转载于:https://www.cnblogs.com/panini/p/6843938.html

你可能感兴趣的文章
推荐一个MacOS苹果电脑系统解压缩软件
查看>>
1035等差数列末项计算
查看>>
CDMA鉴权
查看>>
ASP.NET MVC Identity 兩個多個連接字符串問題解決一例
查看>>
过滤器与拦截器区别
查看>>
USACO 1.5.4 Checker Challenge
查看>>
第二阶段站立会议7
查看>>
[18]Debian Linux Install GNU GCC Compiler and Development Environment
查看>>
JAVA多线程
查看>>
ACE(Adaptive Communication Environment)介绍
查看>>
delphi 更改DBGrid 颜色技巧
查看>>
python编码问题
查看>>
POJ 2031 Building a Space Station
查看>>
面向对象1
查看>>
编程开发之--java多线程学习总结(5)
查看>>
register_globals(全局变量注册开关)
查看>>
as3调用外部swf里的类的方法
查看>>
如何让 zend studio 10 识别 Phalcon语法并且进行语法提示
查看>>
任意阶幻方(魔方矩阵)C语言实现
查看>>
视频教程--ASP.NET MVC 使用 Petapoco 微型ORM框架+NpgSql驱动连接 PostgreSQL数据库
查看>>