冒泡排序是一种交换排序。交换排序:两两比较待排序的关键字,并交换不满足次序要求的那对数,直到整个表都满足次序要求为止。算法思想它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来...
分类:
编程语言 时间:
2016-01-22 10:38:58
阅读次数:
176
归并排序(Merging Sort)就是利用归并的思想实现的排序方法。本文介绍了归并排序的思想,并用java验证了其算法思想,并且对算法进行了分析,希望初学者能够一同学习之。
分类:
编程语言 时间:
2016-01-21 13:39:17
阅读次数:
199
经常使用的排序算法在此总结一下经常使用排序算法的代码实现#include using namespace std;typedef int ElemType;/*1、插入排序(1)直接插入排序算法算法思想:将等排序列划分为有序与无序两部分。然后再依次将无序部分插入到已经有序的部分,最后就能够形成有序序...
分类:
编程语言 时间:
2016-01-19 17:25:35
阅读次数:
201
算法思想:预处理输入的整数字符串,去掉开头的‘0’,然后减法操作,减法操作过程中,如果被减数小于减数,则交换两个数 赋值给被减数和减数变量,始终保持 大数减小数。最后 再 根据 是否交换赋值 来 确定正负。代码实现:#include#includeusing namespace std;//去掉字符...
分类:
其他好文 时间:
2016-01-16 21:05:39
阅读次数:
221
假设背包容量M=9;(P1,P2,P3,P4,P5,P6)=(15,18,40,56,30,10);(W1,W2,W3,W4,W,5,W6)=(3,2,5,8,5,1)。算法思想 变量解释: F(i):Si中第一对序偶在数组中的位置(下标) l, h:Si-1的第一对序偶和最后一对序偶在数组中...
分类:
其他好文 时间:
2016-01-14 13:54:56
阅读次数:
200
希尔排序(不稳定)算法思想:(以从小到大为例)希尔排序使用了一个h1,h2,h3,……,ht的增量序列.用增量Hk对数据元素的一趟排序下来,所有相隔Hk的元素都已经被排好序,即:对于任意位置i,A[i]<=A[i+hk]恒成立。待使用增量为1的那一趟排序之后,所有的元素都保持有序状态。核心..
分类:
编程语言 时间:
2016-01-10 17:16:19
阅读次数:
195
在推荐系统众多方法中,基于用户的协同过滤推荐算法是最早诞生的,原理也较为简单。该算法1992年提出并用于邮件过滤系统,两年后1994年被 GroupLens 用于新闻过滤。一直到2000年,该算法都是推荐系统领域最著名的算法。 本文简单介绍基于用户的协同过滤算法思想以及原理,最后基于该算法实现园友的...
分类:
编程语言 时间:
2016-01-08 22:06:53
阅读次数:
458
打算研究android的一个图片加载库Android-Universal-Image-Loader,然后就看到了缓存的策略,于是又看到了LruCache,是一个最近最少使用算法LRU。前几天看操作系统也看到了LRU算法,是用在缺页中断发生时,进行置换算法才用的一种。缓存中的LrcCache和操作系统中的页置换算法思想是一样的,于是心血来潮,决定把这部分实现看看,然后就有了这篇博客,从HashMap...
分类:
系统相关 时间:
2016-01-07 01:21:02
阅读次数:
349
上篇博客介绍了冒泡算法,接下来介绍插入排序和选择排序. 选择排序; 算法思想:从无序序列中找到最大(或最小)元素,放在序列的最右边(或最左边)。 代码如下: #include using namespace std; void swap(int &a,int &b) { ...
分类:
编程语言 时间:
2015-12-25 22:33:04
阅读次数:
242
插入排序算法思想: 将无序序列最左端的元素插入到有序序列中 示例代码: #include using namespace std;void swap(int &a,int &b){ int temp=a; a=b; b=temp; return;}void Insert_...
分类:
编程语言 时间:
2015-12-25 22:30:04
阅读次数:
205