leecode 230. Kth Smallest Element in a BST

原创 2016年08月30日 17:18:06

扯犊子:我不乐意利用空间写这种树的遍历,尤其是后续遍历。有兴趣的可以考虑一下二叉查找树的性质进行寻找第k个最小值。

题意:在二叉树中寻找最小的第K个元素。

思路:我遍历了二叉树,将所有的数据存放到集合中,然后排序,直接利用集合的get()方法就取出来数了。

public int kthSmallest(TreeNode root, int k) {
		if (root == null)
			return 0;
		List<Integer> list = new ArrayList<Integer>();
		getList(root, list);
		//排序
		Collections.sort(list);
        //取结果,题意是结果一定会存在,所以直接取就行了
		return list.get(k - 1);
	}
    //遍历二叉树,将数据存放到集合中
	public void getList(TreeNode root, List<Integer> list) {
		if (root == null)
			return;
		list.add(root.val);
		getList(root.left, list);
		getList(root.right, list);
	}


版权声明:本文为博主原创文章,未经博主允许不得转载。

【LeetCode-面试算法经典-Java实现】【215-Kth Largest Element in an Array(数组中第K大的数)】

【215-Kth Largest Element in an Array(数组中第K大的数)】【LeetCode-面试算法经典-Java实现】【所有题目目录索引】代码下载【https://github...
  • DERRANTCM
  • DERRANTCM
  • 2015年08月28日 06:57
  • 4121

【Leetcode 动态规划】 买卖股票 I II III IV 冷却,共5题

买卖股票问题
  • Dr_Unknown
  • Dr_Unknown
  • 2016年07月18日 09:26
  • 4545

React Native 学习笔记(二)

坑一,环境好了,但是因为项目需求经常要安装一些三方库,xcode-select: error: tool ‘xcodebuild’ requires Xcode, but active develop...
  • aisjimoxue
  • aisjimoxue
  • 2016年07月19日 15:26
  • 4111

【leetcode】230. Kth Smallest Element in a BST

一、题目描述 Given a binary search tree, write a function kthSmallest to find the kth smallest elem...
  • xiaoquantouer
  • xiaoquantouer
  • 2016年08月06日 14:16
  • 147

[LeetCode]230.Kth Smallest Element in a BST

题目Given a binary search tree, write a function kthSmallest to find the kth smallest element in it.No...
  • SunnyYoona
  • SunnyYoona
  • 2015年08月03日 11:34
  • 1156

leetcode -- 230. Kth Smallest Element in a BST 【遍历 + 计数】

题目 Given a binary search tree, write a function kthSmallest to find the kth smallest element in it....
  • TheSnowBoy_2
  • TheSnowBoy_2
  • 2017年02月11日 01:03
  • 487

[leetcode] 230. Kth Smallest Element in a BST

Given a binary search tree, write a function kthSmallest to find the kth smallest element in it. N...
  • TstsUgeg
  • TstsUgeg
  • 2016年07月11日 16:25
  • 190

LeetCode题解-230-Kth Smallest Element in a BST

原题 概览 BST是二叉查找树,它具有如下的性质:左子树中所有节点的值均小于根节点的值,右子树中所有节点的值均大于根节点的值。 解法1使用了迭代法; 解法2使用了递归法。 ...
  • WangT443
  • WangT443
  • 2016年07月09日 10:43
  • 225

leetcode230:Kth Smallest Element in a BST(medium)

在上一章博文中记录了leetcode第378道题(详细内容查看上一章),该题是返回一个矩阵中第k小的元素,与该题类似,这道题是返回一个二叉搜索树中第k小的元素。 题目:Given a binary s...
  • qq_18297933
  • qq_18297933
  • 2016年08月21日 21:27
  • 281

Leetcode 230 - Kth Smallest Element in a BST(dfs)

题意求bst的第k小。思路利用BST的中序遍历是排好序的这个性质做一下就好了。算法1开了额外的O(n)O(n)空间。利用vector保存了一下中序遍历的结果。算法2我们可以这样考虑:在我们中序遍历的时...
  • Lzedo
  • Lzedo
  • 2017年02月13日 23:08
  • 155
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:leecode 230. Kth Smallest Element in a BST
举报原因:
原因补充:

(最多只允许输入30个字)