题目:左旋转字符串
定义字符串的左旋转操作:把字符串前面的若干个字符移动到字符串的尾部,如把字符串abcdef左旋转2位得到字符串cdefab。请实现字符串左旋转的函数,要求对长度为n的字符串操作的时间复杂度为O(n),空间复杂度为O(n)
思路一、暴力移位法
核心思想:就是把需要移动的字符一步步移动到字符串的尾部
//暴力移位法void leftshiftone(char *s, int...
分类:
其他好文 时间:
2014-08-05 14:17:49
阅读次数:
170
这2题 可以放一起 1231可以算1003的进化版...这2题 我用的方法一样 O(1)空间复杂度 O(n)时间复杂度 ... 这是我自己的说法 错了告知我=-=其实 1231你要是开一个数组的话 就和1003写的时候差不多了 当然那就最好不要开了 touch me 1st ...
分类:
其他好文 时间:
2014-08-04 01:44:29
阅读次数:
337
1. 算法复杂度分为 时间复杂度和空间复杂度。 作用: 时间复杂度是度量算法执行的时间长短;而空间复杂度是度量算法所需存储空间的大小。 2. 一般情况下,算法的基本操作重复执行的次数是模块n的某一个函数f(n),因此,算法的时间复杂度记做:T(n)=O(f(n)) 分析:随着模块n的增大,算法...
分类:
其他好文 时间:
2014-08-03 17:57:45
阅读次数:
235
线性时间复杂度和 O(1)空间复杂度求二叉树中两个节点的最低公共祖先节点。...
分类:
其他好文 时间:
2014-08-03 15:21:24
阅读次数:
187
QuickSortIn the previous challenge, you wrote a partition method to split an array into 2 sub-arrays, one containing smaller elements and one containi...
分类:
其他好文 时间:
2014-08-02 12:12:53
阅读次数:
512
1 概述 算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。一个算法的优劣可以用空间复杂度和时间复杂度来衡量。2 特征 一个算法应该有一下五个重要特征:有穷性、确切性、输入项、输出项、可行性。3 要素 一,数据对...
分类:
其他好文 时间:
2014-07-30 11:48:53
阅读次数:
215
有一个数组(非递减),旋转了不知道多少个位,在该数组中找一个数的下标。写出代码(用C/C++或者java)并分析时间空间复杂度,考虑效率(很重要)。eg:数组 [6,7,1,2,3,4,4] 找3,返回4;函数原型C/C++:int find(int * a,int n,int count) cou...
分类:
移动开发 时间:
2014-07-28 14:57:53
阅读次数:
229
Charm Bracelethttp://poj.org/problem?id=362401背包模板题带空间复杂度优化的。 1 #include 2 #include 3 #include 4 #define mt(a,b) memset(a,b,sizeof(a)) 5 using namespa...
分类:
其他好文 时间:
2014-07-27 11:05:52
阅读次数:
226
在上一篇博文中,我们对KNN算法思想及流程有了初步的了解,KNN是采用测量不同特征值之间的距离方法进行分类,也就是说对于每个样本数据,需要和训练集中的所有数据进行欧氏距离计算。这里简述KNN算法的特点:优点:精度高,对异常值不敏感,无数据输入假定缺点:计算复杂度高,空间复杂度高适用数据范围:数值.....
分类:
编程语言 时间:
2014-07-26 14:52:00
阅读次数:
361
1 /* 2 不改变正负号序列,使得负数在正数前面,要求O(n),时间复杂度,O(1)空间复杂度 3 实际情况,很可能做不到,可以用类似快排partition的方法,但是不能保证有序了,保证有序的一个方法是用翻转,例如 4 2,3,4,-1,-2,3,-5,-6——————翻转为2,3,4,-1,....
分类:
其他好文 时间:
2014-07-25 02:24:24
阅读次数:
209