1.vector
vector是数组的一种类表示,它提供了自动内存管理功能,可以动态的改变vector对象的长度,并随着元素的添加和删除而增大和缩小,它提供了对元素的随机访问,在尾部添加和删除元素的时间是固定的。但是在头部或者中间插入和删除元素的复杂度是线性时间。(足以说明vector是数组。插入
...
分类:
其他好文 时间:
2014-06-07 04:43:51
阅读次数:
216
两种模式的比较分析:(B/S目前比较流行)1、开发和维护成本
B/S模式开发和维护成本比较低,因为只需要维护Web服务器就可以了,C/S模式需要维护客户端和服务器(复杂度相同,工作量差不多的情况下)2、客户端负载
B/S模式客户端负载比较重,很多客户端不需要服务器就解决了很多事情,C/S模式所以.....
分类:
其他好文 时间:
2014-06-07 03:36:59
阅读次数:
175
前面讨论了几种排序算法,三种O(n2)时间复杂度的排序算法:插入,选择和冒泡和两种O(nlgn)的算法:快速排序和归并排序。这几种排序数组除了归并排序需要额外的数组开销。其他几个的空间复杂度都是O(1)。通过比较交换元素完成排序.计数排序是利用空间换取时间,增加了两个额外数组的开销,而且计数排序有一...
分类:
其他好文 时间:
2014-05-30 03:29:19
阅读次数:
241
找出一个数组的最大值和最小值是比较容易的,我们只需遍历一次数组即可。但是寻找一个数组的第i小或者第i大,就需要一些技巧使得查找的时间尽可能小。随机化划分选择算法是一个时间复杂度为O(n)的算法。int
fIndmax(int a[],int p,int r,int i){ if(p==r) ...
分类:
其他好文 时间:
2014-05-30 01:57:38
阅读次数:
269
题意大概是给出一个数列num,和一个目标数target,然后要找出数列中的两个数,使得这两个数之和等于目标数,输出这两个数的下标值(从1开始算)。
一个比较暴力的方法是用一个二重循环直接遍历序列,在第一重循环中找到a,在第二重循环中找到b,使得a+b=target,这种做法的时间复杂度是O(n^2....
分类:
其他好文 时间:
2014-05-29 21:01:06
阅读次数:
307
题意:所给数据中是否有负环? 没有负环的图中所有路径中最短的值思路:1. bellmanford
判断负环2.flodyWarshall 求所有定点的最短路径细节:1. bellmanford 算法时间复杂度为 o(n^3), 因为图的使用邻接矩阵存储的,
使用邻接表代码会容易理解些, 引用 wik...
分类:
其他好文 时间:
2014-05-29 20:41:30
阅读次数:
237
题目:在二维坐标系下,有很多个挡板,有两个挡板之间能够积蓄的水的最大面积。如下图所示:思路:我只想到暴力解法,用O(n2)的时间复杂度算出任意两个挡板形成的面积,这必须的过不了。优化解法:O(n).用两个指针
i 和 j 指向整个height[]数组的头尾。if i 指向的高度 决定,因此不会比现在...
分类:
其他好文 时间:
2014-05-29 17:40:09
阅读次数:
312
参考:《机器学习实战》 优点:计算复杂度不高,
输出结果易于理解,对中间值的缺失不敏感,可以处理不相关特 征数据。 缺点:可能会产生过度匹配问题。 适用数据类型:数值型和标称型。
创建分支的伪代码(createBranch): 图1 1、信息...
分类:
其他好文 时间:
2014-05-29 16:59:42
阅读次数:
401
时间复杂度的定义:在计算机科学中,算法的时间复杂度是一个函数,它定量描述了该算法的运行时间。一个算法执行所耗费的时间,从理论上说,是不能算出来的,只有你把你的程序放在机器上跑起来,才能知道。我们可以记住一句话,“算法中的基本操作的执行次数,为算法的时间复杂度”。那么,什么是基本操作呢:基本操作就是算...
分类:
其他好文 时间:
2014-05-28 21:35:22
阅读次数:
278
最近要毕业了,有半年没做比赛了.这次参加百度之星的初赛娱乐一下.现在写一下解题报告.还是先看看四道题的类型吧1.Scenic
Popularity 暴力 复杂度O( 100 * 100 * 10000 ) 或者O( T * K * R) 线段树2.Chess DP
复杂度 O(n^2)3.Best ...
分类:
其他好文 时间:
2014-05-28 13:19:16
阅读次数:
261