码迷,mamicode.com
首页 >  
搜索关键字:空间复杂度    ( 2067个结果
leetcode_160_Intersection of Two Linked Lists
思路: 暴力解法,将第一个链表的所有结点放进HashSet,然后看第二个链表从头开始的第一个存在HashSet中的元素就是两个链表相交的地方。 方法不够好,题目说的空间复杂度最好为O(1)...
分类:其他好文   时间:2015-02-07 17:32:48    阅读次数:230
字典树(trie 树)
字典树(trie树) 字典树是一种在字符串查找,前缀匹配等方面应用广泛的算法,它在查找字符串时只与被查询的字符串长度有关,所以它在查找时只有O(1)的时间复杂度,但随之而来的较大的空间复杂度。一.原理分析 如图,字典树的每一个节点是由一个数据域(用来标记是否在此处有字符串终止)与26个指针域(表.....
分类:其他好文   时间:2015-02-07 13:06:10    阅读次数:185
Android面试算法题之拆分元素
.//有一个整数数组,有负数和整数,用一个方法把正负数分开,要求空间复杂度是O(1),时间复杂度是:O(N) /** ????*?分数组 ????*/ ???public?static?void?awaylist(){ ??????int?a[]?=?n...
分类:移动开发   时间:2015-02-06 15:20:07    阅读次数:225
那传说中的P、NP以及NPC问题
那传说中的P、NP以及NPC问题 (这里只是自己的一些总结) 在讲这几个问题之前,有几个东西是必须要说的,包括时间复杂度、空间复杂度、图灵机什么的。那么我们就慢慢来一一说来。 图灵机:图灵机其实就是一个计算模型,是由图灵提出来的。图灵机号称可以模拟实际计算机的所有计算行为,计算能力还超过现有的计.....
分类:其他好文   时间:2015-02-04 18:34:33    阅读次数:147
各种排序时间空间复杂度稳定性分析
下面是常见排序算法的速度比较:(从慢到快) 1、冒泡排序O(N^2) 2、简单选择排序O(N^2) 3、直接插入排序O(N^2) 4、折半插入排序O(N^2) 5、希尔排序,近似为O(N^1.25)     (尚无定论,但可以确定是N~N^2之间的多项式时间复杂度) 6、堆排序O(NlogN) 7、归并排序O(NlogN) 8、快速排序O(NlogN) 一般来说是快排最快的。但是...
分类:编程语言   时间:2015-01-29 09:34:09    阅读次数:274
[C++]LeetCode: 125 Sort List (归并排序链表)
题目:Sort a linked list in O(n log n) time using constant space complexity. 思路:题目要求我们使用常数空间复杂度,时间复杂度为O(nlog(n)). 满足这个时间复杂度的有快速排序,归并排序,堆排序。插入排序时间复杂度为O(n^2). 双向链表用快排比较合适,堆排序也可用于链表,单项链表适合于归并排序。我们就用归并排序的...
分类:编程语言   时间:2015-01-27 11:13:51    阅读次数:190
两个有序数组中查找第K大数
题目:两个数组A、B,长度分别为m、n,即A(m)、B(n),分别是递增数组。求第K大的数字。方法一:简单的办法,使用Merge Sort,首先将两个数组合并,然后在枚举查找。这个算法的时间复杂度是O(m+n)、空间复杂度也是O(M+n)。这个方法其实没有考虑到有第K大数为两个相同数字的情况。方法二...
分类:编程语言   时间:2015-01-26 22:25:57    阅读次数:295
2015小米校招技术类笔试题
一. 问答题 1. 大家对回文串不陌生吧?一个字符串从前看和从后看如果一样的话,就是回文串。比如“上海自来水来自海上”就是一个回文串。现在我们的问题来了,把一个数字看成字符串,问它是不是一个回文数?这么简单的题目对想要成为小米工程师的你来说肯定不是问题。不过提醒一下哦:时间复杂度和空间复杂度越低的算法,得分越高。 C++: bool isPalindromeNumber(long num)...
分类:移动开发   时间:2015-01-26 12:04:08    阅读次数:157
Leetcode#41 First Missing Positive
原题地址非常有技巧的一道题,如果没有接触过类似题目或没有任何提示的情况下想出来很困难,因为题目要求O(1)的空间复杂度既然是O(1)的空间复杂度,自然要用到原数组了。解法是:1. 遍历每个数组元素,把元素都交换到正确的位置上。比如发现A[3] = 5,则交换A[5]和A[3],让A[5]=5。2. ...
分类:其他好文   时间:2015-01-24 17:07:38    阅读次数:115
程序典型面试题---数组中只出现一次的数字
题目:一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。要求时间复杂度是O(n),空间复杂度是O(1)。解法:位异或运算思路:将问题简化为除了一个数字外,其他数字都出现两次。将数组的结果异或起来,因为出现两次的数组异或结果为0,所以结果异或的结果即为出现一次...
分类:编程语言   时间:2015-01-23 16:19:05    阅读次数:129
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!