摘要: 题意: 在一个无序的数组中第k大的数是多少?思路: 按照快排的思路,如果每次分成两段后,设为L和R。如果R>=k ,则答案在右边集合,否则在左边集合。 这里用了3位取中法。注意快排别给写死循环了。 1 class Solution { 2 public: 3 int findKthLa... 阅读全文
posted @ 2015-11-17 22:26 xcw0754 阅读(423) 评论(0) 推荐(0) 编辑
摘要: 题意: 给一棵二叉树,要求收集每层的最后一个节点的值。按从顶到底装进vector返回。思路: BFS比较简单,先遍历右孩子就行了。 1 /** 2 * Definition for a binary tree node. 3 * struct TreeNode { 4 * int ... 阅读全文
posted @ 2015-11-17 20:43 xcw0754 阅读(249) 评论(0) 推荐(0) 编辑
摘要: 1. 简介 红黑树也是一种自平衡二叉查找树,具有二叉树的特点,又与平衡二叉树有区别,主要区别在于红黑树的“平衡”不再是"左右子树高度之差不大于1",全部体现在其定义中。它的统计性能要好于平衡二叉树(AVL树),因此,红黑树在很多地方都有应用。在C++ STL中,很多部分(目前包括set, multi 阅读全文
posted @ 2015-11-17 12:49 xcw0754 阅读(306) 评论(0) 推荐(0) 编辑