码迷,mamicode.com
首页 >  
搜索关键字:空间复杂度    ( 2067个结果
字符串元素重排高效算法集合
以下各题均有时间复杂度为O(n*n)或以空间换取时间使得时间空间复杂度为O(n)的算法,在此均不考虑。 问题一、字符串移动       字符串为*号和26个字母的任意组合,把*号都移动到最左侧,把字母移到最右侧并保持相对顺序不变,要求时间和空间复杂度最小 。如“afdg**fa**hjfkdsl”变换成“****afdgfahjfkdsl”          此题前后字符串的长度...
分类:其他好文   时间:2014-06-20 10:49:56    阅读次数:296
[LeetCode] Longest Valid Parentheses
第一种方法,用栈实现,最容易想到,也比较容易实现,每次碰到‘)’时update max_len,由于要保存之前的‘(’的index,所以spacecomplexity 是O(n) 1 // 使用栈,时间复杂度 O(n),空间复杂度 O(n) 2 class Solution { 3 publ...
分类:其他好文   时间:2014-06-11 09:16:10    阅读次数:197
编程珠玑--左旋字符串
其实编程之美也有类似的题,这道题是编程珠玑第二章的题目。题目描述:给定一个字符串,将字符串循环移位K次。最简答的方法就是,通过O(n)的辅助空间,将数组循环移位,时间复杂度就是O(n)但是如果要求空间复杂度为O(1)呢?观察规律可知,对前K位反转以及后面的反转,最后对整个字符串反转就能达到O(1)的...
分类:其他好文   时间:2014-06-10 21:02:52    阅读次数:275
桶排序--小试牛刀
桶排序特点:在桶的大小和元素个数呈现线性关系的时候,复杂度是线性的,最差是O(n^2)(个人理解是当所有元素都在一个桶的时候,采用插入排序的时候);稳定排序(注意实现的时候:对同一个桶内元素的排序要使用稳定排序实现);空间复杂度比较高;桶排序的描述:(1)初始化桶,将元素放入到合适的桶内(2)对各个...
分类:其他好文   时间:2014-06-10 00:45:33    阅读次数:356
Binary Tree Preorder Traversal
1. 递归解法 2. 非递归解法(空间复杂度O(n)和O(1))...
分类:其他好文   时间:2014-06-08 10:47:37    阅读次数:139
【剑指offer】左旋转字符串
这道题之前在Cracking the Coding interview上做过类似的,一样的三次反转,即可得到,时间复杂度为O(n),空间复杂度为O(1)。这道题在九度OJ上测试,主要要考虑移动的位数大于字符串长度时的情况,取余即可。...
分类:其他好文   时间:2014-06-05 09:34:36    阅读次数:236
0526.第二章:时间复杂度和空间复杂度[数据结构]
第二章:时间复杂度和空间复杂度   1、为什么要学习时间复杂度和空间复杂度?你说一个算法好另外一个算法不好,有什么判断依据?哪个算法效率高?怎么判断?那么就要学习时间和空间复杂度了。 思考:学习每一个知识之前都应该要考虑一下为什么要学习,学了有什么用处,什么场景下去用。 2、算法的效率高一般是指算法的执行时间,度量一个算法的执行时间有2种方式: 事后统计法:需要编写测...
分类:其他好文   时间:2014-06-05 04:26:56    阅读次数:157
线性排序:计数排序与基数排序
前面讨论了几种排序算法,三种O(n2)时间复杂度的排序算法:插入,选择和冒泡和两种O(nlgn)的算法:快速排序和归并排序。这几种排序数组除了归并排序需要额外的数组开销。其他几个的空间复杂度都是O(1)。通过比较交换元素完成排序.计数排序是利用空间换取时间,增加了两个额外数组的开销,而且计数排序有一...
分类:其他好文   时间:2014-05-30 03:29:19    阅读次数:241
笔试算法题(50):简介 - 广度优先 & 深度优先 & 最小生成树算法
广度优先搜索&深度优先搜索(Breadth First Search & Depth First Search)BFS优缺点:同一层的所有节点都会加入队列,所以耗用大量空间;仅能非递归实现;相比DFS较快,空间换时间;适合广度大的图;空间复杂度:邻接矩阵O(N^2);邻接表O(N+E);时间复杂度:...
分类:其他好文   时间:2014-05-29 15:33:14    阅读次数:407
对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
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!