生成可重集的排列

刘汝佳在算法竞赛入门经典,http://book.douban.com/subject…,的 118 页提到生成一个可重集的全排列问题,跟上次的 生成一个字符串的全排列 很相像,但是写法却巧妙很多 #include <stdio.h> void quick_sort(int a[], int left, int right) { int i=left, j=right; int povit = a[(i+j)/2]; while (i ……

阅读全文

算法复习之快速排序

快速排序这个自己想了一会,真的想不出来,还是查了资料,使用 C89 标准函数库有一个非常简单的写法,(维基上的不能跑,自己稍稍改了一下) #include <stdio.h> #include <stdlib.h> static int cmp(int *a, int *b) { return *a-*b; } int main() { int arr[10]={5, 3, 7, 4, 1, 9, 8, 6, 2}; qsor……

阅读全文

算法复习之冒泡排序与选择排序

基础丢的差不多了,是时候该重新捡起来,不然真的心虚啊,于是就从排序开始,上 poj 找基础的排序题居然没有,悲催,太低级了,最后在 hdu 上找到一个排序题,http://acm.hdu.edu.cn/showprob… 忘得差不多也有一个好处,就是可以自己从头再想,这次决定不看任何参考资料,就凭着模糊的印象,慢慢的把算法的思路先理……

阅读全文