题目:给出O(N)运行时间的非递归算法,实现对一个含N个元素的链表的逆转,要求空间复杂度为O(1)代码:/* Assuming List with header and L is not empty */List ReverseList( List L ){ Position CurrentP...
分类:
编程语言 时间:
2014-10-18 15:14:15
阅读次数:
195
最直白方法:时间复杂度是O(n3), 空间复杂度是常数reference:http://blog.csdn.net/monkeyandy/article/details/7957263/**** copyright@andy**http://blog.csdn.net/MonkeyAndy**/首先...
分类:
其他好文 时间:
2014-10-14 20:27:19
阅读次数:
204
空间复杂度为(1-n),时间复杂度为应该也是最低的,lua方便之处还是很值得利用的
local Random = {}; function Random:Awake()
self.m_min = 1;
self.m_max = 1;
self.m_end = 1;
self.m_rangeMap =...
分类:
其他好文 时间:
2014-10-13 20:22:47
阅读次数:
452
算法复杂度分为时间复杂度和空间复杂度,一个好的算法应该具体执行时间短,所需空间少的特点。 随着计算机硬件和软件的提升,一个算法的执行时间是算不太精确的。只能依据统计方法对算法进行估算。我们抛开硬件和软件的因素,算法的好坏直接影响程序的运行时间。 我们看一下小例子: int value = ...
分类:
编程语言 时间:
2014-10-13 19:42:36
阅读次数:
227
算法: 解题的方法和步骤 衡量算法的标准: 1、时间复杂度 大概程序要执行的次数,而非执行的时间; 2、空间复杂度 算法执行过程中大概所占用的最大内存; 3、难易程度 4、健壮性数据结构的地位: 数据结构是软件中最核心的课程; 程序 = 数据的存储...
分类:
编程语言 时间:
2014-10-13 00:37:08
阅读次数:
293
转自:算法的空间复杂度类似于时间复杂度的讨论,一个算法的空间复杂度(Space Complexity)S(n)定义为该算法所耗费的存储空间,它也是问题规模n的函数。渐近空间复杂度也常常简称为空间复杂度。空间复杂度(Space Complexity)是对一个算法在运行过程中临时占用存储空间大小的量度。...
分类:
编程语言 时间:
2014-10-12 03:12:07
阅读次数:
264
选择排序(假设递增排序)
每次选取从当前结点到末尾结点中最小的一个与当前结点交换,每一轮固定一个元素位置。
时间复杂度O(n^2),空间复杂度O(1)。下面的示例代码以带头结点的链表为存储结构:
#include
#include
#define Elemtype double
struct Node
{
Elemtype data;
struct Node *next;
};
void...
分类:
编程语言 时间:
2014-10-10 21:50:04
阅读次数:
225
快速排序是基于分治思想的排序,以递增排序为例:
首先选取一个基准元素pivot,将小于pivot的元素移到其左侧,
大于pivot的元素移到其右侧。这一轮固定了pivot的位置。
然后对其左右两侧执行相同的操作。
快速排序平均时间复杂度O(nlogn),最差时间复杂度O(n^2);空间复杂度O(1)。
示例代码如下:
#include
#define Elemtype int
int ...
分类:
其他好文 时间:
2014-10-10 15:31:34
阅读次数:
177
转自:http://blog.csdn.net/wodewe/article/details/6863753#题:有N+2个数,N个数出现了偶数次,2个数出现了奇数次(这两个数不相等),问用O(1)的空间复杂度,找出这两个数,不需要知道具体位置,只需要知道这两个值。求解:如果只有一个数出现过奇数次,...
分类:
其他好文 时间:
2014-10-10 11:54:14
阅读次数:
186
给一个数组,其中只有一个数出现一次,其他的数都出现3次,请找出这个数。要求时间复杂度是O(n),空间复杂度O(1)。...
分类:
其他好文 时间:
2014-10-10 02:20:23
阅读次数:
177