直接选择排序:直接选择排序(Straight Select Sort)算法思想:第一趟从n个元素的数据序列中选出关键字最小/大的元素并放在最前/后位置, 下一趟从n-1个元素中选出最小/大的元素并放在最前/后位置。以此类推,经过n-1趟完成排序。时间复杂度O(n**2) ...
分类:
编程语言 时间:
2018-04-05 20:07:55
阅读次数:
176
磁盘调度算法 磁盘调度在多道程序设计的计算机系统中,各个进程可能会不断提出不同的对磁盘进行读/写操作的请求。由于有时候这些进程的发送请求的速度比磁盘响应的还要快,因此我们有必要为每个磁盘设备建立一个等待队列,常用的磁盘调度算法有以下四种: [1] 先来先服务算法(FCFS), 最短寻道时间优先算法( ...
分类:
编程语言 时间:
2018-04-05 11:37:47
阅读次数:
391
1、算法思想 设要排序的数组是A[0]……A[N-1],首先随意选取一个数据(通常选用数组的第一个数)作为重要数据,然后将全部比它小的数都放到它前面。全部比它大的数都放到它后面。这个过程称为一趟高速排序。值得注意的是,高速排序不是一种稳定的排序算法。也就是说,多个同样的值的相对位置或许会在算法结束时 ...
分类:
编程语言 时间:
2018-04-03 22:14:58
阅读次数:
162
概要 把常用的机器学习算法:$k$ 近邻算法、决策树、朴素贝叶斯、$K$ 均值聚类其思想有及 python 代码实现总结一下。做到既要知其然又要知其所以然。参考《机器学习实战》。 $k$ 近邻算法 基本原理 $k$ 近邻算法是分类数据最简单有效 ...
分类:
编程语言 时间:
2018-03-26 19:07:02
阅读次数:
215
【问题描写叙述】 rand7是一个能生成1-7的随机数。要求利用rand7生成1-10的随机数。 【算法思想】 1.组合数学方法 第1次 1 2 3 4 5 6 7 之中用rand7取一个数 第2次从 2 3 4 5 6 7 8 之中取一个数 第3次从 3 4 5 6 7 8 9 之中取一个数 第4 ...
分类:
其他好文 时间:
2018-03-21 22:02:07
阅读次数:
153
前两节讲到了信息的加密和信息的完整性,可是无法解决密码(密钥)传输保密的问题。如何在不安全的网络上来进行协商密码(密钥)呢? 1976年,W.Diffie和M.Hellman在发表的论文中提出了公钥加密算法思想,但当时并没有给出具体的实施方案,原因在于没有找到单向函数(也就是消息摘要算法),但在该论文中给
分类:
编程语言 时间:
2018-03-20 11:48:52
阅读次数:
199
等价转换与其说是一种算法的设计方法,更不说是一种算法思想。这种思想能有助于我们把复杂的问题简单化,帮我们理清问题的思路,甚至能直接得出求解问题的方法。下面通过一道具体的题目来像读者介绍这种思想。Gergovia酒的交易(WinetradinginGergovia,UVa11054)直线上有n(2<=n<=100000)个等距离的村庄,每个村庄要么买酒,要么卖酒。设第i个村庄对酒的需求为
分类:
编程语言 时间:
2018-03-18 22:28:46
阅读次数:
205
要点:算法思想(就是你想怎么排序)及其核心代码(Java) 算法思想:冒泡排序顾名思义基本的对象是一个个气泡(代表一个元素或者说待排序的数字),按照由大到小或者由小到大的顺序,通过比较相邻气泡的大小把气泡升到水面或者水底。 算法抽象解释:有C语言基础的通常知道数组,暂且默认排序由小到大且共n个待排序 ...
分类:
编程语言 时间:
2018-03-18 21:47:09
阅读次数:
234
计数排序的算法思想: 对于每一个元素x,只要确定了元素x有多少个比它小的元素,那么就可以知道其最终的位置。 记输入数组为A[n],存放最后排序输出的数组为B[n],提供临时存储空间的中间数组记为C[k]。 1\首先,将中间数组C[k]清0,其中,0~k为A[n]中元素的取值范围。 2\一边遍历A[n ...
分类:
编程语言 时间:
2018-03-15 16:22:43
阅读次数:
213
中途相遇法,这是一种特殊的算法,大体思路是从两个不同的方向来解决问题,最终“汇集”到一起。“双向广度优先搜索”算法就有一点中途相遇的味道。下面我们通过一道具体的题目,来了解一下这种算法思想的应用。和为0的4个值(4ValueWhoseSumisZero,ACM/ICPCSWERC2005,UVa1152)给定4个n(1<=n<=400)元素集合A,B,C,D,要求分别从中选取一个元素a
分类:
编程语言 时间:
2018-03-13 23:54:29
阅读次数:
213