分类: 白话经典算法系列 2011-08-06 19:27 52070人阅读 评论(58) 收藏 举报 算法直接插入排序(Insertion Sort)的基本思想是:每次将一个待排序的记录,按其关键字大小插入到前面已经排好序的子序列中的适当位置,直到全部记录插入完成为止。设数组为a[0…n-1]。....
分类:
编程语言 时间:
2015-05-12 22:39:55
阅读次数:
173
分类: 白话经典算法系列 2011-08-06 19:20 93923人阅读 评论(72) 收藏 举报 算法优化冒泡排序是非常容易理解和实现,,以从小到大排序举例:设数组长度为N。1.比较相邻的前后二个数据,如果前面数据大于后面的数据,就将二个数据交换。2.这样对数组的第0个数据到N-1个数据进行....
分类:
编程语言 时间:
2015-05-12 22:27:14
阅读次数:
149
微软快速排序-快速搞定算法腾讯面试快速排序由于排序效率在同为O(N*logN)的几种排序方法中效率较高,因此经常被采 用,再加上快速排序思想----分治法也确实实用,因此很多软件公司的笔试面试,包括像腾讯,微软等知名IT公司都喜欢考这个,还有大大小的程序方面的考 试如软考,考研中也常常出现快速排序的...
分类:
编程语言 时间:
2015-05-12 20:57:55
阅读次数:
159
快速排序由于排序效率在同为O(N*logN)的几种排序方法中效率较高,因此经常被采用,再加上快速排序思想----分治法也确实实用,因此很多软件公司的笔试面试,包括像腾讯,微软等知名IT公司都喜欢考这个,还有大大小...
分类:
编程语言 时间:
2015-05-06 21:18:35
阅读次数:
196
导语
在算法系列的第二十二篇,我们介绍了离散傅立叶变换算法的实现,将时域的音频信号转换到频域进行分析,获取拨号音频的频率特征。这一篇我们将介绍一种频域均衡器的实现方法,所谓的频域均衡器,就是在频域信号的基础上对音频数据进行调整,然后再将频域信号转换成时域信号在回放设备上播放,从而达到音色调节的目的。将频域信号转换成时域信号的算法,就是离散傅立叶逆变换算法。
1 离散傅立叶逆变换有从时域转换到频域...
分类:
编程语言 时间:
2015-05-04 20:11:17
阅读次数:
198
public class Queen { private final int size; private int[] location; private int[] columnOccupied; private int[] lineOccupied; ...
分类:
编程语言 时间:
2015-05-04 13:51:16
阅读次数:
124
转载自白话经典算法系列,动画展示希尔排序的实质就是分组插入排序,该方法又称缩小增量排序,因DL.Shell于1959年提出而得名。该方法的基本思想是:先将整个待排元素序列分割成若干个子序列(由相隔某个“增量”的元素组成的)分别进行直接插入排序,然后依次缩减增量再进行排序,待整个序列中的元素基本有序(...
分类:
编程语言 时间:
2015-05-03 17:20:02
阅读次数:
163
今天突然心血来潮了,想开始看算法了,立此博文,开始对算法系列开始完善,争取每周两文。在分析过程中可能想法较笨,希望各位能够宽容和帮助,如果有更好的意见和建议,可随时留言批评。闲话少数,开始正文。第一次程序// 通过一次循环将数组中第一个数安排到数组中比它小的数之前for (int i = 0; .....
分类:
编程语言 时间:
2015-04-28 01:53:18
阅读次数:
143
类属性算法unique的作用是从输入序列中“删除”所有相邻的重复元素。该算法删除相邻的重复元素,然后重新排列输入范围内的元素,并且返回一个迭代器(容器的长度没变,只是元素顺序改变了),表示无重复的值范围得结束。在STL中unique函数是一个去重函数, unique的功能是去除相邻的重复元素(只保留...
分类:
编程语言 时间:
2015-04-16 15:40:52
阅读次数:
186
选择排序:#include using namespace std;#define LENGTH 10int data[LENGTH];void SelectSort(int i,int num){ if(i >num; for(int i = 1;i >data[i]; Sele...
分类:
编程语言 时间:
2015-04-05 23:09:22
阅读次数:
188