package algorithm;public class BinarySearch { public static int search(int a[], int key) { int low = 0; int high = a.length - 1; int mid = 0; while (l ...
分类:
编程语言 时间:
2016-09-05 12:23:20
阅读次数:
149
近期来闲来无事,整理了一些比较常见的排序算法,都是用C++写的,其中包括:直接插入排序、折半插入排序、冒泡排序、选择排序、快速排序、堆排序、归并排序、希尔排序、基数排序,计数排序和桶排序,总共11种算法,其中时间复杂度为O(n^2)为前4种,中间4中的时间复杂度为O(nlgn),最后3种的时间复杂度 ...
分类:
编程语言 时间:
2016-09-01 18:32:02
阅读次数:
279
来源:http://blog.csdn.net/turne/article/details/50488378 看数据结构书的时候碰上的内容,我自己将它化成关于级数的题,然后自己算的过程,基本就是等比级数和等差级数的混合内容。 满二叉树来分析折半查找的平均长度 h=层高 n=节点数 看数据结构书的时候 ...
分类:
其他好文 时间:
2016-09-01 14:47:22
阅读次数:
199
二分査找也称折半査找,其长处是查找速度快,缺陷是请求所要査找的数据必需是有序序列。该算法的根本思惟是将所要査找的序列的两头地位的数据与所要査找的元素停止比拟,假如相等,则表现査找胜利,不然将以该地位为基准将所要査找的序列分为阁下两局部。接下来依据所要査找序..
分类:
编程语言 时间:
2016-08-27 23:49:18
阅读次数:
194
题目链接:http://poj.org/problem?id=3977 给你n个数,找到一个子集,使得这个子集的和的绝对值是最小的,如果有多种情况,输出子集个数最少的; n<=35,|a[i]|<=10e15 子集个数共有2^n个,所以不能全部枚举,但是可以分为两部分枚举; 枚举一半的所有情况,然后 ...
分类:
其他好文 时间:
2016-08-22 12:27:32
阅读次数:
99
问题描述:矩阵每一行有序,每一行的最后一个元素小于下一行的第一个元素,查找。 算法分析:这样的矩阵其实就是一个有序序列,可以使用折半查找算法。 ...
分类:
其他好文 时间:
2016-08-18 23:09:34
阅读次数:
148