01背包的简单实现(C++)
摘要://w物品价值数组,v物品体积数组, int getMax(int a,int b){return a>=b?a:b;}; int w[11] = {-1,1,1,1,2,2,2,3,4,5,6}; int v[11] = {-1,1,2,3,3,3,4,4,1,6,7};//通过调用maxValue(10,30); int maxValue(int i,int surplusV){ if(i == 1 && surplusV >= v[1]) return w[1]; else if(i == 1&& surplusV < v[1]) ret
阅读全文
posted @
2012-12-22 14:19
codingcool
阅读(444)
推荐(0)
使用递归计算数组的排列
摘要:问题描述:给定一个整型数组(数组元素各不相同),输出数组元素的所有可能排列。解决方案:我们可以通过递归的方式生成数组元素的所有排列:例如生成A[4]的排列,我们把A[3]分别指定为A[0],A[1],A[2],A[3],例如制定为A[0]就需要将A[0]和A[3]互换,在每次指定时计算前3个元素的排列,这样问题就减小规模了,当只剩下一个元素时再进行输出,值得注意的一点是:在递归过程中改变了数组的内容,递归结束后必须改回来!实现代码://surplus还有多少整数未被递归,n数组总数,A为待排列数组void arrange(int A[],int surplus,int n){ int i; /
阅读全文
posted @
2012-12-20 18:46
codingcool
阅读(252)
推荐(0)
整型并查集实现
摘要:C++实现的整形变量的并查集,使用通用类型只需要使用template模版方法即可~
阅读全文
posted @
2012-12-20 16:53
codingcool
阅读(169)
推荐(0)
算法的基本概念及复杂性分析
摘要:1s = 1000ms = 1000 000us = 1000 000 000ns现代计算机的执行能力大约是1000 000 000次/s,这个可以用来估算程序运行时间。
阅读全文
posted @
2012-12-19 18:44
codingcool
阅读(123)
推荐(0)