算法
文章平均质量分 55
aggble
这个作者很懒,什么都没留下…
展开
-
二叉查找树-总结
定义: 二叉排序树或者是一棵空树,或者是具有下列性质的二叉树: (1)若左子树不空,则左子树上所有结点的值均小于它的根结点的值; (2)若右子树不空,则右子树上所有结点的值均大于或等于它的根结点的值; (3)左、右子树也分别为二叉排序树; (4)没有键值相等的节点。 查找: 查找对于二叉树查找树来说很简单这也是二叉查找树的优势所在,和目标值一样查找成功,比原创 2015-07-10 15:56:35 · 894 阅读 · 0 评论 -
2个数和等于一个目标值-leepcode
这是我的解答用hashmap实现算法复杂度为N #include using namespace std; class Solution { public: vector twoSum(vector& nums, int target) { vector res; int i =0; map map1;原创 2015-07-09 15:15:28 · 452 阅读 · 0 评论 -
一句话二叉堆总结
二叉堆是完全二叉树和近似二叉树,二叉堆满足堆特性:父节点的键值总是保持固定的序关系于任何一个子节点的键值,且每个节点的左子树和右子树都是一个二叉堆。当父节点的键值总是大于或等于任何一个子节点的键值时为最大堆。 当父节点的键值总是小于或等于任何一个子节点的键值时为最小堆。 一、二叉堆插入:二叉堆插入只需要将插入数组尾部,然后和父节点比较判断是否需要交换(如果是最小堆,如果插原创 2015-07-07 11:32:16 · 418 阅读 · 0 评论 -
Check if a linked list is palindrome
关于链表是否为回文的算法思路: 1、如果链表的数字是个位数完全可以通过授权的方式来来解决,对于第1个节点*10的size()次方,依次权递减,同样,从尾到头也采取同样的方式授权,分别把两个方法得到的授权后的所有的数加起来,如果相等说明2者是回文,不是的话肯定不是回文。算法复杂度O(N)和空间复杂度O(1) 2、用栈来实现,把前半部分入栈,然后出栈依次和后半部分比较,如果全部相等则是回文,不是则原创 2015-07-14 15:22:06 · 257 阅读 · 0 评论