
算法
敲电脑的小码农
嗯,天性懒惰,想努力的做出点改变,嗯,就这样吧,敲代码去
展开
-
n皇后问题
/**以下是关于皇后的摆放判断的具体操作int Place(int* Column,int index){int i;for(i=1;i<=index;i++){int Column_differ=abs(Column[index]-Column[i]);/**皇后的位置与棋盘最大宽度的 ...原创 2019-05-19 23:09:13 · 138 阅读 · 0 评论 -
分治法之归并排序算法示例
void MergeSort(int A[],int p,int r){int q;if(p<r){ q=(p+r)/2; /**将排序元素分成两个大致相同的两个子序列**/ MergeSort(A,p,q); /**对两个子序列分别进行排序**/ MergeSort(A,q+1,r); Merge(A,p,q,r);/**将最终排好序的子序列合并为所要求...原创 2019-05-19 23:12:39 · 433 阅读 · 0 评论 -
动态规划法示例:背包问题的解决
/**运用动态规划法计算背包问题/**自底向上的方式计算最优解的值int **KnapsackDP(int n,int W,int * Weights,float *Valus){int i,w;/**为二维数组申请空间**/int **c=(int **)malloc(sizeof(int *)*(n+1));for(i=0;i<=n;i++) c[i]=(int *)ma...原创 2019-05-19 23:14:10 · 942 阅读 · 0 评论 -
动态规划法之最长公共子序列
/**动态规划法之最长公共子序列/**计算最优解的值int** Lcs_Length(const char*str1,const char*str2,int str1_length,int str2_length){int i,j;/**为矩阵1,b分配空间int** 1=(int **)malloc(sizeof(int *)*(str1_length+1));int** b=(...原创 2019-05-19 23:15:13 · 425 阅读 · 0 评论 -
贪心法之背包问题解决
/*贪心法对已有的信息作出选择,而且一旦作出选择,不管结果如何,选择都不会变化**//**贪心法之活动选择问题**//**活动选择问题就是要选择出一个由互相兼容的活动组成的最大集合**//**递归贪心法**/int OptimalSubset[100];int RecursiveActivitySelector(int*s ,int *f,int index,int n){ /*s[0...原创 2019-05-19 23:16:10 · 1175 阅读 · 0 评论