码迷,mamicode.com
首页 >  
搜索关键字:空间复杂度    ( 2067个结果
数组中只出现一次的数据
题目来源:《剑指offer》面试题40 题目:一个整形数组除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。要求时间复杂度O(n),空间复杂度O(1) 分析:运用异或的思想。我们从头到尾一次异或数组中的每一个数字,那么最终得到的结果就是两个只出现一次的数字的异或结...
分类:编程语言   时间:2015-09-04 22:33:48    阅读次数:206
[算法] 排序方法复杂度、稳定性汇总
对几种排序方法进行简单总结。排序类型时间复杂度空间复杂度稳定性冒泡排序O(N^2)O(1)稳定插入排序O(N^2)O(1)稳定选择排序O(N^2)O(1)不稳定希尔排序O(N^2)O(1)不稳定堆排序O(NlogN)O(1)不稳定快速排序O(NlogN)O(logN)不稳定归并排序O(NlogN)O...
分类:编程语言   时间:2015-09-03 11:30:58    阅读次数:128
[leetcode] Permutation Sequence
题目:https://leetcode.com/problems/permutation-sequence/ 分析:康托编码 code: // LeetCode, Permutation Sequence // 康托编码,时间复杂度 O(n),空间复杂度 O(1) class Solution { ...
分类:其他好文   时间:2015-09-02 00:03:25    阅读次数:169
zoj 2112 动态区间求第k大
题目大意:动态单点更新,然后多次询问求区间内第k大这里单个的主席树不能实现,这里采取的是树状数组套主席树首先可以想的是将静态主席树先构建好,不去动它,这里空间复杂度就是O(nlogn),这个只要之前做过主席树的入门题的话就都不是问题然后考虑更新的情况,这里将更新产生的前缀变化保存在树状数组中,那么每...
分类:其他好文   时间:2015-09-01 13:49:23    阅读次数:255
复杂度
复杂度算法的复杂度算法效率的度量是通过时间复杂度和空间复杂度来描述的。一.时间复杂度—个语句的频度是指该语句在算法中被重复执行的次数。算法中所有语句的频度之和记作T(n),它是该算法问题规模n的函数,时间复杂度主要分析T(n)的数量级。算法中的基本运算(最深层循环内的语句)的频度与T(n)同数量级,...
分类:其他好文   时间:2015-08-31 11:39:32    阅读次数:211
算法的复杂度
算法效率的度量是通过时间复杂度和空间复杂度来描述的。 一.时间复杂度 —个语句的频度是指该语句在算法中被重复执行的次数。算法中所有语句的频度之和记作T(n),它是该算法问题规模n的函数,时间复杂度主要分析T(n)的数量级。算法中的基本运算(最深层循环内的语句)的频度与T(n)同数量级,所以通常采...
分类:编程语言   时间:2015-08-30 19:25:14    阅读次数:174
Gym 100345H Settling the Universe Up
bitset模板bitset可以看作bool数组,但优化了空间复杂度和时间复杂度,并且可以像整形一样按位与或。优化作用:常常碰到处理的数组只有0和1的变化,此时就可以使用bitset优化。比如求两个集合的交集可以使用按位与运算,求并集可以使用按位或运算#includebiset s(10); //....
分类:其他好文   时间:2015-08-30 12:46:19    阅读次数:195
树的非递归遍历:一种很好的算法
栈模拟非递归算法递归算法的本质是利用函数的调用栈进行,实际上我们可以自行使用栈来进行模拟,这样的算法空间复杂度为O(h),h为二叉树的高度。前序遍历首先把根节点入栈,然后在每次循环中执行以下操作:此时栈顶元素即为当前的根节点,弹出并打印当前的根节点。把当前根节点的右儿子和左儿子分别入栈(注意是右儿子...
分类:编程语言   时间:2015-08-30 11:07:19    阅读次数:220
Manacher 算法讲解 O(N)复杂度的 最长回文子串求解
求解最长回文子串的方法很多,有几种常见的O(N^2)的最长回文子串求解方法,比如说枚举中心位置向两边扩展,动态规划等,大部分朋友应该都比较熟悉。 Manacher算法相比于上面两种方法,时间复杂度是O(N),空间复杂度也是O(N),可以说是快速求解决回文子串的利器。下面介绍这一算法的思想,以及在文末给与它的实现。 我们以...
分类:编程语言   时间:2015-08-29 15:30:18    阅读次数:210
《剑指Offer》:移除字符串中重复的字符
题目: 移除字符串中重复的字符, 如abcadc移除后变为abcd, 注意:可以额外定义一两个变量,但不允许额外开辟一个数组。 思路 这里要求了空间复杂度为O(1),那我们只能用最简单的遍历方法,先让第一个字符与后面的字符一一比较,遇到重复的就把重复的字符用’\0’替换掉,再让第二个字符与右面的字符一一比较,遇到重复的,就把重复的字符用’\0’代替,如此循环,直到最后一个字符,当...
分类:其他好文   时间:2015-08-29 14:06:30    阅读次数:132
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!