
算法分析与设计
文章平均质量分 59
geliaozhang
东北师范大学2016级中美计算机学生
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
有重复元素的排列问题
#include<iostream> using namespace std; int ans; //计数器 //自定义内联函数Swap template <class Type> inline void Swap(Type &a,Type &b) { Type temp=a; a=b; b=temp; } //判断是否有重复元素 te...原创 2018-05-28 14:46:58 · 1648 阅读 · 0 评论 -
快速排序
#include<iostream> using namespace std; template <class Type> inline void Swap(Type &a,Type &b) { Type temp=a; a=b; b=temp; } template <class Type> int Partitio...原创 2018-05-28 14:58:25 · 190 阅读 · 0 评论 -
动态规划解决矩阵连乘问题
//动态规划解决矩阵连乘问题,主函数测试数据来源教材p47 #include<iostream> using namespace std; //m[i][j]为i到j所需最少连乘次数,s[i][j]对应于m[i][j]断开位置 void MatrixChain(int *p, int n, int m[7][7], int s[7][7]) { int i,j,r,k; fo...原创 2018-05-29 14:22:34 · 5184 阅读 · 0 评论 -
0-1背包问题
//教材上的第一种方法实现0-1背包问题 /* 样例输入: 5 10 2 2 6 5 4 6 3 5 4 6 样例输出: 请输入可选择物品个数: 5 请输入背包容量: 10 请依次输入可选择物品的重量: 2 2 6 5 4 请依次输入可选择物品的价值: 6 3 5 4 6 可装入背包的元素为(0表示不可装入,1表示可装入): 1 1 0 0 1 装入背包物品总价值的最优解为: 15 */ #inc...原创 2018-05-30 19:42:31 · 319 阅读 · 0 评论 -
多元Huffman编码
问题描述:在一个操场的四周摆放着n堆石子,现要将石子有次序地合并成一堆。规定每次至少选2堆至多选k堆石子合并成新的一堆,合并的费用为新的一堆石子数。计算出将n堆石子合并成一堆的最大总费用和最小总费用。算法设计:对于给定的n堆石子,计算合并成一堆的最大总费用和最小总费用。数据输入:文件的第1行有2个正整数n和k,表示有n堆石子,每次至少选2堆至多选k堆石子合并。第2行有n个数,分别表示每堆石子的个数...原创 2018-05-31 19:21:49 · 4071 阅读 · 1 评论