码迷,mamicode.com
首页 >  
搜索关键字:二分    ( 14969个结果
归并排序
它的思想是将一个无序的数组先用递归进行二分,当分解为无限小时,即为单个整数时,再对其进行排列。得出有序的数组 代码如下: package com.jll.sort; public class MergeSort { public MergeSort() { } public void merge(i...
分类:其他好文   时间:2014-07-06 21:01:33    阅读次数:161
[Leetcode][BST][Validate Binary Search Tree]
判断一颗树是不是二分查找树,非常经典基础的一个算法。我很久之前第一次做的时候,是先求出来了树的前序遍历的结果,然后判断这个数组排序后是否和排序前相同,还要判断重复虾米的,很纠结的一种做法。后来思考了一下怎么用递归的思路做,觉得应该根据定义返回两个子树的最大值和最小值,写了一会代码,发现好麻烦,不太对...
分类:其他好文   时间:2014-07-06 13:14:30    阅读次数:178
二分查找
templateint binarySearch(const vector &a, const comparable &x){ int low = 0, high = a.size() - 1; while(low a[center]) low = center ...
分类:其他好文   时间:2014-07-06 13:10:01    阅读次数:188
[Leetcode][BST][Convert Sorted Array to Binary Search Tree]
把一个排好序的vector转换为一颗二分查找树。很简单的题目,递归即可,保证边界不要出错。 1 /** 2 * Definition for binary tree 3 * struct TreeNode { 4 * int val; 5 * TreeNode *left; ...
分类:其他好文   时间:2014-07-06 12:53:50    阅读次数:174
UVa 10125 - Sumsets
题目:给你n个数让你在里面找到会不相同的4个数a,b,c,d,使得 d = a + b + c。 分析:数学题,散列表。这是一个优化问题。             方法1:暴力法;             先排序,然后直接利用四层循环求解,找到解后直接跳出,也可以以利用二分代替最后一层循环;             这种方法,如果遇到特殊的数据就会TLE;             方法2...
分类:其他好文   时间:2014-07-06 12:02:05    阅读次数:141
《Code Complete》ch.23 调试
WHAT?调试——发现错误的一种手段WHY?相对于不善于调试的程序员,善于调试的程序员只需要前者1/20的时间就可以找出问题所在HOW?科学的调试方法把错误的发生稳定下来:假设-证实/证伪确定错误原因:二分法同他人讨论问题忏悔式调试抛开问题,休息一下修正问题动手之前先要理解问题理解程序本身,而不仅仅...
分类:其他好文   时间:2014-07-05 20:01:10    阅读次数:184
查找系列之简述顺序查找和二分查找
顺序查找和二分查找 一、顺序查找思想        1、 从表的一端开始扫描,顺序扫描线性表,依次扫描到的结点关键字与给定的值K相比较.如果当前扫描到的结点的关键字与给定的值K相等,则查找成功;若扫描结束后,仍未找到关键字与给定的值K相等,则查找失败;      2、顺序查找既适用于顺序存储结构,也适用于线性表的链式存储结构;      3、ASL= (n+1)/2为其平均查找长度...
分类:其他好文   时间:2014-07-04 08:49:02    阅读次数:230
数据结构之AVL树
在前面的博文中,我们已经介绍了数据结构之二分查找树的相关知识,二分查找的提出主要是为了提高数据的查找效率。同一个元素集合可以对应不同的二分查找树BST,二分查找树的形态依赖于元素的插入顺序。同时我们也已经知道,如果将一个有序的数据集依次插入到二查找树中,此时二分查找树将退化为线性表,此时查找的时间复杂度为o(n)。为了防止这一问题的出现,便有了平衡二叉树AVL的存在价值。平衡二叉树从根本上将是为了防止出现斜二叉树的出现,从而进一步提高元素的查找效率,保证元素查找的时间复杂度为o(logn),显然,平衡二叉树...
分类:其他好文   时间:2014-07-04 08:04:40    阅读次数:1711
BZOJ 刷题记录 PART 6
【BZOJ2709】水的二分加验证。但是好像被读入萎到了。。。 【BZOJ3229】强大的算法见此。被机房的一堆大神“推荐”,于是被坑了。。。写了一个下午。。。 【BZOJ3631】这道题给我的启示是:要多想想算法。开始一直在打树链剖分,打到一半忽然在众神犇的提(bi)示(shi)下,发现有O(N)的方法。试想:如果要支持区间修改(加减),最后再查询,可以用什么方法?固然,线段树和树状数组等等...
分类:其他好文   时间:2014-07-04 00:28:36    阅读次数:333
POJ 3294 Life Forms (后缀数组)
题目大意: 求出在m个串中出现过大于m/2次的子串。 思路分析: 如果你只是直接跑一次后缀数组,然后二分答案扫描的话。 那么就试一下下面这个数据。 2 abcdabcdefgh efgh 这个数据应该输出 efgh 问题就在于对于每一个串,都只能参与一次计数,所以在check的时候加一个标记数组是正解。 #include #include #inc...
分类:其他好文   时间:2014-07-03 15:35:12    阅读次数:171
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!