码迷,mamicode.com
首页 >  
搜索关键字:算法分析    ( 1138个结果
Python数据结构与算法--算法分析
在计算机科学中,算法分析(Analysis of algorithm)是分析执行一个给定算法需要消耗的计算资源数量(例如计算时间,存储器使用等)的过程。算法的效率或复杂度在理论上表示为一个函数。其定义域是输入数据的长度,值域通常是执行步骤数量(时间复杂度)或者存储器位置数量(空间复杂度)。算法分析是...
分类:编程语言   时间:2014-10-22 14:12:10    阅读次数:490
算法分析基础
1、程序的性能 程序的性能由时间复杂度和空间复杂度决定。 1.1空间复杂度 程序所需要的空间主要由以下部分构成: ?  指令空间。存储经过编译之后的程序指令。指令有操作数和操作码构成。 ?  数据空间。存储所有常量和所有变量值所需的空间。 ?  环境栈空间。保存函数调用返回时恢复运行所需要的信 息。  (1)指令空间 程序所需指令空间的大小取决于如下因素: ...
分类:编程语言   时间:2014-10-21 10:22:07    阅读次数:252
Uva-1440-Inspection (只有下界的网络最小流)
Inspection     题目:   题目还是比较裸的没有上界只有下界的网络最小流问题。输出路劲太烦人了。!不想写了。给出别人的代码。    算法分析:    网络最小流一般用二分查找判断就好了。要注意的就是在最后输出路径的时候要在调用一次最大流。因为,之前结束的流量不一定是最后答案的流量。   #include #include #include #include using...
分类:其他好文   时间:2014-10-20 17:26:02    阅读次数:209
快速排序算法分析
关于快速排序算法,由于其有着很好的平均时间复杂度而得到了广泛的应用。快排的思想:每次从数组中取出一个元素出来,然后将该元素放置到一个合适的位置,使得该元素前面的数都小于或等于该元素,其后面的数都大于或等于该元素。然后在对该元素左右两边的数组进行同样的操作,直到左右两边的元素为空。比如:有数组:538...
分类:编程语言   时间:2014-10-17 21:41:15    阅读次数:252
poj Going Home
Going Home   题目:    给出一个N*M的图,图上的m表示人,H表示房子,每座房子只能有一个人,要求你所有人到房子中总步数最少。m个数与H个数一样多。   算法分析:    这个题目还是比较裸的。可以想到先求出每个人到每座房子的距离。然后求出最小花费,这个好像就是最小费用流吧?一开始用了KM写完后,发现。。。。哪里不对啊?后来才觉悟,原来题目是求解最小花费,KM是最大匹配...
分类:其他好文   时间:2014-10-10 09:46:54    阅读次数:167
poj Optimal Milking
Optimal Milking   题目:    有K个机器,C只牛。要求求出最所有牛到各个产奶机的最短距离。给出一个C+K的矩阵,表示各种标号间的距离。 而每个地方最多有M只牛。   算法分析:    二分+最短路+网络流 想法难以想到。我是看解题报告的思路。然后,自己上了手。开始wrong 了3次。后来各种该,无意的一个更改就AC了。无语勒。。。。 wrong 在了,...
分类:其他好文   时间:2014-10-09 19:58:23    阅读次数:206
POJ Farm Tour
Farm Tour   题目:    约翰有N块地,家在1号,而N号是个仓库。农场内有M条道路(双向的),道路i连接这ai号地和bi号地,长度为ci。约翰希望按照从家里出发,经过若干地后达到仓库,然后再返回家中。如果要求往返不能经过同一条道路两次,求参观路线总长度最小值。   算法分析:    用最短路求解然后在删除第一次最短路中的边在求解一次最短路,这样是否可行?应该马上就能找到反例...
分类:其他好文   时间:2014-10-07 15:12:23    阅读次数:128
poj Dual Core CPU
Dual Core CPU   题目:    给出由核A和核B组成的双核CPU上的运行N个模块。模块i在核A上执行的花费为Ai,在核B上执行的花费为Bi。有M个互相之间需要进行数据交换的模块组合(ai,bi),如果,这两块模块在同一个核上执行则没有额外的费用,否则会产生wi的花费。请计算执行所有模块所需的最小花费。   算法分析:    用最小的费用将对象划分成两个集合问题,常常可以转...
分类:其他好文   时间:2014-10-07 11:46:33    阅读次数:227
数据结构与算法分析 3.26 — 双端队列的实现
一、题目 编写支持双端队列的例程,插入与弹出操作均花费 O(1)时间二、解答 双端队列(deque,全名double-ended queue)是一种具有队列和栈性质的数据结构。 双端队列中的元素可以从两端弹出,插入和删除操作限定在队列的两边进行。 基本操作:在双端队列两端插入与删除。 ADT...
分类:其他好文   时间:2014-10-06 01:44:29    阅读次数:341
数据结构与算法分析 3.23 — 用一个数组实现三个(多个)栈
一、题目 用一个数组实现三个(或多个)栈二、解答 用一个数组实现三个乃至多个栈,如果想使用一个数组构造两个栈的思想则行不通; 考虑使用静态链表,数组结点中存在两个域,关键字域与指示栈的前驱的游标,则可以使三个栈可以用一个数组表示; ADT的关键术语: Capacity: 数组的容量; S...
分类:其他好文   时间:2014-10-05 23:21:59    阅读次数:216
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!