博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
leetcode#树#二叉树转单链表算法
阅读量:3952 次
发布时间:2019-05-24

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

Difficulty: 简单

二叉树数据结构TreeNode可用来表示单向链表(其中left置空,right为下一个链表节点)。实现一个方法,把二叉搜索树转换为单向链表,要求依然符合二叉搜索树的性质,转换操作应是原址的,也就是在原始的二叉搜索树上直接修改。

返回转换后的单向链表的头节点。

**注意:**本题相对原题稍作改动

示例:

输入: [4,2,5,1,3,null,6,0]输出: [0,null,1,null,2,null,3,null,4,null,5,null,6]

提示:

  • 节点数量不会超过 100000。

Solution

Language: 全部题目

/** * Definition for a binary tree node. * public class TreeNode { *     int val; *     TreeNode left; *     TreeNode right; *     TreeNode(int x) { val = x; } * } */class Solution {
public TreeNode convertBiNode(TreeNode root) {
Deque
stack = new LinkedList<>(); while(root !=null) {
stack.push(root); root = root.left; } // TreeNode head = new TreeNode(0); TreeNode prev = stack.peek(); while(stack.isEmpty() ==false) {
TreeNode cur =stack.pop(); root = cur.right; while (root != null) {
stack.push(root); root = root.left; } // TreeNode cur = stack.pop(); cur.left = null; if (stack.isEmpty() ==false) {
cur.right = stack.peek(); } } return prev; }}

转载地址:http://suyzi.baihongyu.com/

你可能感兴趣的文章
500款各领域机器学习数据集,总有一个是你要找的
查看>>
2017年终奖调查出炉 程序员年终奖多少你绝对猜不到
查看>>
使用 Charles 抓取 app 数据包
查看>>
未来,改变世界的将是这些......
查看>>
2018年大数据趋势
查看>>
大数据揭示年度学霸画像:大家都在学什么?
查看>>
各领域机器学习数据集汇总(附下载地址)
查看>>
如何运用Python建一个聊天机器人?
查看>>
人民日报:让中国大数据跑起来!
查看>>
百度地图大数据告诉你一线城市真相
查看>>
大数据 勾勒中国人“的亲情地图”!
查看>>
500款各领域机器学习数据集,总有一个是你要找的
查看>>
大数据读心术丨这15条数据统计准爆了!
查看>>
大数据预测报告:2018年春节长假居民最喜欢去这些地方
查看>>
趣图:有时候我写的代码,就是这样子的
查看>>
大数据读心术丨这15条数据统计准爆了!
查看>>
500款各领域机器学习数据集,总有一个是你要找的
查看>>
收藏 | Linux常用156个命令汇总!
查看>>
十张图看懂未来大数据世界
查看>>
“揭秘”大数据的10个神话!
查看>>