BST转双向排序链表(增加新结点和不增加新结点版本)

本文介绍如何将二叉搜索树(BST)转换为排序的双向链表,提供两种方法,一种允许创建新结点,另一种不创建新结点。通过递归实现,分别对树进行中序遍历,利用BST的特性找到合适的位置拼接结点,最后返回链表头指针。
摘要由CSDN通过智能技术生成

前几天看到一个题目,叫做 “输入一棵二叉搜索树,将其转换为一个排序的双向链表。要求:不能创建任何新的结点,只能调整树中结点指针的指向”。

其中的不能创建任何新的结点在这个题目里面很关键,那么就先作为一个条件,在第一版本中先把这个条件忽略。

那么题目就变成了,"输入一棵二叉搜索树,将其转换为一个排序的双向链表"。

Leetcode上面并没有原题,我在lintcode上面找到了原题: lintcode 378题             

给定一个二叉查找树:

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值