码迷,mamicode.com
首页 >  
搜索关键字:空间复杂度    ( 2067个结果
常用排序算法总结---Java实现
各个排序总结,以及时间,空间复杂度分析一.冒泡排序: /* 冒泡排序: 排序算法思想:进行n-1趟排序,每趟,相邻元素,两两相互比较,将其中如果前一个元素比后一个元素小 则令其交换。(最后的结果是,小的往后移(从大到小的冒泡)) */ class BubleSort { public static void main(String[] args) { int[] arr ...
分类:编程语言   时间:2015-08-29 12:44:30    阅读次数:213
剑指offer-第五章优化时间和空间效率(两个链表的第一个公共节点)
思路1:要求的是两个链表的第一个公共节点,首先想到的是用栈来存放两个链表,然后依次从栈中抛出,直到最后一个相同的节点为止。但是要用到两个栈,空间复杂度为O(n);思路2:从头到尾分别遍历两个链表得到链表的长度风别为,len1和len2,求出两者的差值dif,然后现在长的链表上面走dif步,然后同步走...
分类:其他好文   时间:2015-08-28 17:32:30    阅读次数:153
排序方法总结和实现
由于很多大神已经总结过各种排序算法的性能及适合坏境,这里便不再总结,只是强调几个重点。 (1)快排的空间复杂度不是o(1),是o(logn)~o(n); (2)四种不稳定的排序算法:简单选择,快排,希尔和堆排序 (3)冒泡排序最有情况下时间复杂度可优化为o(n); (4)归并排序的空间复杂度为o(n); (5)快排在整体倒序的情况下时间复杂度为o(n2) (6)建一个最大堆的复杂度为o...
分类:编程语言   时间:2015-08-26 12:01:32    阅读次数:184
算法题:找出整数数组中两个只出现一次的数字
问题:一个整数数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。要求时间复杂度为O(n),空间复杂度为O(1)。分析:这是一个很新颖的关于位运算的题目。首先考虑这个问题的一个简单版本:一个整数数组里除了一个数字之外,其他的数字都出现两次,请写程序找出这个只出现一次的...
分类:编程语言   时间:2015-08-26 07:02:42    阅读次数:223
python练习
题目1:一个正整数数组,有2个数只出现了一次,其他的数都出现了2次,求出这2个只出现了一次的数。要求算法复杂度为O(n),空间复杂度为O(1)思路:所有数相异或,出现2次的数消掉了,剩下的是出现1次的2个数相异或的结果,结果的为1的位表示这2个数的差异位。比如list_t=[1,2,3,8,4,4,...
分类:编程语言   时间:2015-08-25 15:43:42    阅读次数:213
数组中只出现一次的数字
题目 一个整型数组里除了两个数字之外,其他数字都出现了两次。请找出这两个只出现一次的数字。要求时间复杂度O(n),空间复杂度O(1) 思路 我们知道如果把题目中的两个数字换成一个的话,整个数组内的元素连续异或,最终的数便是那个出现一次的数,因为异或的性质:相同为0,不同为1,所以有任何数字异或自己都是0。 换成两个数字后,我们可以继续全局异或,得到的数必然不等于0,那么也就是说二进制中必然...
分类:编程语言   时间:2015-08-21 23:24:46    阅读次数:162
ZOJ 2112 Dynamic Rankings(主席树套树状数组+静态主席树)
题意:给定一个区间,求这个区间第k大的数,支持单点修改。 思路:主席树真是个神奇的东西.........速度很快但是也有一个问题就是占用内存的很大,一般来说支持单点修改的主席树套树状数组空间复杂度为O(n*logn*logn), 如果查询较少的话,可以初始的时候用一颗静态主席树,这样空间复杂度可以降为O(n*logn+q*logn*logn),勉强可以过zoj这道题。 这道题看了好久好久才懂....
分类:编程语言   时间:2015-08-21 21:29:57    阅读次数:556
常用的排序、查找算法的时间复杂度和空间复杂度
常用的排序算法的时间复杂度和空间复杂度排序法最差时间分析平均时间复杂度稳定度空间复杂度冒泡排序O(n2)O(n2)稳定O(1)插入排序O(n2)O(n2)稳定O(1)选择排序O(n2)O(n2)稳定O(1)二叉树排序O(n2)O(n*log2n)不一顶O(n)快速排序O(n2)O(n*log2n)不...
分类:编程语言   时间:2015-08-19 12:55:09    阅读次数:175
落单的数
题目描述Description有n个数(n是奇数),其中n-1个数两两成对,有1个数落单,找出这个数。要求O(n)的时间复杂度,O(1)的空间复杂度输入描述Input Description第一行输入一个n, n是大于等于1的奇数第二行包含n个整数输出描述Output Description输出那个...
分类:其他好文   时间:2015-08-19 12:41:47    阅读次数:150
时间复杂度和空间复杂度详解
算法的时间复杂度和空间复杂度合称为算法的复杂度。 1.时间复杂度 (1)时间频度?一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才能知道。但我们不可能也没有必要对每个算法都上机测试,...
分类:其他好文   时间:2015-08-19 11:31:22    阅读次数:150
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!