码迷,mamicode.com
首页 >  
搜索关键字:时间复杂度    ( 8884个结果
线性排序:计数排序与基数排序
前面讨论了几种排序算法,三种O(n2)时间复杂度的排序算法:插入,选择和冒泡和两种O(nlgn)的算法:快速排序和归并排序。这几种排序数组除了归并排序需要额外的数组开销。其他几个的空间复杂度都是O(1)。通过比较交换元素完成排序.计数排序是利用空间换取时间,增加了两个额外数组的开销,而且计数排序有一...
分类:其他好文   时间:2014-05-30 03:29:19    阅读次数:241
中位数和顺序统计,以线性期望时间做选择
找出一个数组的最大值和最小值是比较容易的,我们只需遍历一次数组即可。但是寻找一个数组的第i小或者第i大,就需要一些技巧使得查找的时间尽可能小。随机化划分选择算法是一个时间复杂度为O(n)的算法。int fIndmax(int a[],int p,int r,int i){ if(p==r) ...
分类:其他好文   时间:2014-05-30 01:57:38    阅读次数:269
Leetcode刷题录之Two Sum
题意大概是给出一个数列num,和一个目标数target,然后要找出数列中的两个数,使得这两个数之和等于目标数,输出这两个数的下标值(从1开始算)。 一个比较暴力的方法是用一个二重循环直接遍历序列,在第一重循环中找到a,在第二重循环中找到b,使得a+b=target,这种做法的时间复杂度是O(n^2....
分类:其他好文   时间:2014-05-29 21:01:06    阅读次数:307
Coursera algorithm II PA4
题意:所给数据中是否有负环? 没有负环的图中所有路径中最短的值思路:1. bellmanford 判断负环2.flodyWarshall 求所有定点的最短路径细节:1. bellmanford 算法时间复杂度为 o(n^3), 因为图的使用邻接矩阵存储的, 使用邻接表代码会容易理解些, 引用 wik...
分类:其他好文   时间:2014-05-29 20:41:30    阅读次数:237
[leetcode]_Container With Most Water
题目:在二维坐标系下,有很多个挡板,有两个挡板之间能够积蓄的水的最大面积。如下图所示:思路:我只想到暴力解法,用O(n2)的时间复杂度算出任意两个挡板形成的面积,这必须的过不了。优化解法:O(n).用两个指针 i 和 j 指向整个height[]数组的头尾。if i 指向的高度 决定,因此不会比现在...
分类:其他好文   时间:2014-05-29 17:40:09    阅读次数:312
笔试算法题(45):AC自动机(Aho-Corasick Automation)
议题:AC自动机(Aho-Corasick Automation)分析:此算法在1975年产生于贝尔实验室,是著名的多模式匹配算法之一;一个常见的例子就是给定N个单词,给定包含M个字符的文章,要求确定多少个给定的单词在文章中出现过;AC自动机在匹配文本时不需要回溯,处理时间复杂度与pattern无关...
分类:其他好文   时间:2014-05-28 23:00:00    阅读次数:236
时间复杂度
时间复杂度的定义:在计算机科学中,算法的时间复杂度是一个函数,它定量描述了该算法的运行时间。一个算法执行所耗费的时间,从理论上说,是不能算出来的,只有你把你的程序放在机器上跑起来,才能知道。我们可以记住一句话,“算法中的基本操作的执行次数,为算法的时间复杂度”。那么,什么是基本操作呢:基本操作就是算...
分类:其他好文   时间:2014-05-28 21:35:22    阅读次数:278
对Big Oh的新的认识
对Big Oh的新的认识一个问题,它有很多种算法都能实现。每种算法它的时间、空间复杂度不一样。比如:问题1: 求最大连续子序列和的问题,可以有O(n3)、O(n2)、O(nlogn)和O(n)四种时间复杂度的解法。请看下面的代码:一、O(n3)算法 二、O(n2)算法 三、O(nlogn)算法用分治...
分类:其他好文   时间:2014-05-26 19:17:41    阅读次数:234
最大子序列和问题
算法1 用两个for循环定位子序列的上下界,然后再用最内部的一个for循环求出上下界之间的元素和。 时间复杂度:O(N³)。 代码: int MaxSub(int *a, int n) { int sum = 0; int tmp; for (int i = 0; i < n; i++) { for (int j = i; j <...
分类:其他好文   时间:2014-05-25 21:28:44    阅读次数:243
【leetcode】Minimum Window Substring
问题: 给定两个字符串,S,T,返回S中包含T中所有字符的最短的字串,若不存在,则返回"".时间复杂度为O(n)。 例如:S = "ADOBCODEBANC"           T = "ABC"          返回BANC 生活场景: 把问题具体化现实化一点。有n层楼,每层楼里放有一个物品,现在老板给你一个物品清单,里面是要你集齐的物品,你可以乘坐电梯,但是电梯只停一次,停在哪...
分类:Windows程序   时间:2014-05-25 21:27:17    阅读次数:438
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!