码迷,mamicode.com
首页 >  
搜索关键字:空间复杂度    ( 2067个结果
Java版双向冒泡排序算法
冒泡排序算法是一种较为简单的并且稳定的排序算法,该算法的时间复杂度最好为O(n),最差时为O(n^2),需要的空间复杂度为O(1)。 这里的算法稳定性是指 经过排序后,各元素仍然能保持它们在排序之前的相对次数,就称该算法是稳定的,反之,则为不稳定的。 例如,一组数排序前是a1,a2,a3,a4,a5 ...
分类:编程语言   时间:2017-11-03 13:11:58    阅读次数:212
python编程规范与代码优化建议
1.严格使用缩进来体现代码的逻辑从属关系。 python对代码的缩进是硬性要求,这一点必须时刻注意。如果某个代码段的缩进不对,那么整个程序就是错的,要么是语法错误无法执行,要么是逻辑错误导致错误结果,而检查这样的错误会花费很多时间。 2.每个import语句只导入一个模块,最好按标准库、扩展库、自定 ...
分类:编程语言   时间:2017-11-01 14:51:53    阅读次数:203
算法--有序数组的不同绝对值个数
题目: 给定一个有序数组, 求它的元素的绝对值个数. 如数组[-3, -1, 0, 0, 2, 3, 5], 返回5. 分析: 第一种思路. 数组遍历一遍, 将每一个元素的绝对值放入一个Set里面, 最后求Set的大小. 这种方法虽然很简单, 但是空间复杂度不小, 为O(n). 那么能不能同样只遍历 ...
分类:编程语言   时间:2017-10-29 16:40:28    阅读次数:182
希尔排序
核心代码 算法分析: 最好时间复杂度:O(n) 有序 平均时间复杂度:O(n^1.3) 最坏时间复杂度:O(n^2) 空间复杂度:O(1) 稳定性:不稳定 ...
分类:编程语言   时间:2017-10-28 12:57:33    阅读次数:132
堆排序
核心代码 算法分析: 最好时间复杂度:O(nlog2(n)) 平均时间复杂度:O(nlog2(n)) 最坏时间复杂度:O(nlog2(n)) 空间复杂度:O(1) 稳定性:不稳定 ...
分类:编程语言   时间:2017-10-27 20:39:09    阅读次数:195
算法时间空间复杂度
-定义: 在进行算法分析时,语句总的执行次数T(n)是关于问题规模n的函数,进而分析T(n)随n的变化情况并确定T(n)的数量级,算法的时间复杂度,也就是算法的时间量度,记作:T(n)=O(f(n))。它表示随问题规模n的增大,算法执行时间的增长率和f(n)的增长率相同,称作算法的渐进时间复杂度,简 ...
分类:编程语言   时间:2017-10-27 18:34:02    阅读次数:193
148. Sort List
Sort a linked list in O(n log n) time using constant space complexity. 含义:为一个列表排序,要求空间复杂度为常量 思路:使用归并排序 ...
分类:其他好文   时间:2017-10-25 16:44:11    阅读次数:88
树状数组的原理和实现
树状数组的原理和实现 概念 树状数组或者二叉索引树也称作Binary Indexed Tree,又叫做Fenwick树;它的查询和修改的时间复杂度都是log(n),空间复杂度则为O(n),这是因为树状数组通过将线性结构转化成树状结构,从而进行跳跃式扫描。通常使用在高效的计算数列的前缀和,区间和。 其 ...
分类:编程语言   时间:2017-10-22 22:18:15    阅读次数:226
计数排序
核心代码 应用场合:排序的数据属于同一个范围之内,分配得非常密集,并且重复的次数很多。 算法分析: 最好时间复杂度:O(n) 平均时间复杂度:O(n) 最坏时间复杂度:O(n) 空间复杂度:O(n) 稳定性:不稳定 ...
分类:编程语言   时间:2017-10-22 21:00:28    阅读次数:228
148. Sort List
Sort a linked list in O(n log n) time using constant space complexity. 解题思路:归并排序的思想,空间复杂度其实是O(N)了 ...
分类:其他好文   时间:2017-10-22 00:10:02    阅读次数:115
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!