最近一个项目的开发中遇到一个需求,有一组数1,2,3,4,5,6,7,8,0.如何将一组随机打乱随机生成比如0-9的任意排列的一组数。比如生成0.6.1.2.3.4.5.7.8等等。
算法思路:
1、使用Arraylist存放这组数
2、随机生成Arraylist的下标值,根据下标值依次取出Arraylist值,直到Arraylistwei为空
哈哈,是不是很简单。。。。。。。。。。
下...
分类:
其他好文 时间:
2014-07-22 23:05:15
阅读次数:
481
给定一个字符串满足规律 11212312345……,求其第k位的数字。算法思路:分组来看,第一组1
第二组12 第三组123 第K组[1:k]1-9组每组1位, 10-99组每组2位
依次类推。网上大部分解法,用一个数组表示到第k组时,一共需要多少位数,但这个方法需要额外的空间,而且空间大小并不是非...
分类:
其他好文 时间:
2014-05-29 02:46:29
阅读次数:
272
题目:Modified LCS
为过此题去仔细研究了下扩展欧几里德算法,领悟了一些精华。
模板为:
void gcd(ll a, ll b, ll& d, ll& x, ll& y)
{
if(!b) {d = a; x = 1; y = 0;}
else{ gcd(b, a%b, d, y, x); y -= x*(a/b);}
}
这里算出来的x,y是对于方...
分类:
其他好文 时间:
2014-05-23 00:26:20
阅读次数:
377
题目:
链接:点击打开链接
题意:
输入n和nc,以及字符串s,输出长度为n的不同字串的个数。
算法:
思路:
用hash判重(hash值。。。。。。),看了大牛的代码,对hash还是不甚理解。。。。
代码:#include
#include
#include
#include
using namespace std;
#define MAXN 1...
分类:
其他好文 时间:
2014-05-15 23:25:24
阅读次数:
404
归并排序
归并排序 (merge sort) 是一类与插入排序、交换排序、选择排序不同的另一种排序方法。归并的含义是将两个或两个以上的有序表合并成一个新的有序表。归并排序有多路归并排序、两路归并排序 , 可用于内排序,也可以用于外排序。这里仅对内排序的两路归并方法进行讨论。
1.两路归并排序算法思路
①把 n 个记录看成 n 个长度为1的有序子表;
②进行两两归并使记录关键字有序,...
分类:
编程语言 时间:
2014-05-07 11:47:08
阅读次数:
347
接着这个系列,前几个又重新写匈牙利算法时,发现了一种更为简洁的实现方式,和上一篇文章相比http://blog.csdn.net/smartxxyx/article/details/9672181,
这个算法更为简洁,也好理解。和维基百科上介绍的算法思路是一致的。...
分类:
其他好文 时间:
2014-05-07 03:27:01
阅读次数:
301