自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 回溯搜索与剪枝的实现

if(max_w>bag) printf("\n该方案总价%d,总重%d,超重!printf("\n该方案总价%d,总重%d,可行\n",max_v,max_w);if(max_v>max_value)//此处应考虑是否更新max_value的值。printf("物品%d,价值%d,重量%d\n",i,v[i],w[i]);printf("能获得的最大价值为:%d\n",backpack(a,v,w,N,0));bool constraint(int a[],int w[],int t)//约束剪枝判断。

2023-06-03 22:18:29 55

原创 贪心算法二

设有n个顾客同时等待一项服务。顾客i需要的服务时间为ti,1≤i≤n。应如何安排n个顾客的服务次序才能使平均等待时间达到最小?平均等待时间是n个顾客等待服务完成的时间总和除以n。printf("第%d窗口上顾客接受服务的顺序为:",a+1);printf("请输入可服务地方的数目(s):");printf("平均等待时间为:%d",time);printf("请依次输入顾客所需服务时间:");printf("请输入顾客数目(n):");输入 N个顾客的服务时间,并设置服务窗口数量s,

2023-06-03 21:45:40 49

原创 贪心算法。

cout<<"重量为"<<w[i]<<"价值量为"<<v[i]<<"的物品"<<"放入的比例为"<<x[i]<<endl;给定n种物品和一个背包。物品i的重量是Wi,其价值为Vi,背包最大承载重量为C。cout<<"请输入每件物品的重量和价值量:"<<endl;,应如何选择装入背包的物品,使得装入背包中物品的总价值最大?cout<<"请输入背包最大容纳量:"<<endl;cout<<"请输入物品数:"<<endl;定义N个物品的基本数据和背包容量C,//按照单价大小降序排列。

2023-06-03 21:37:02 47

原创 备忘录方法

给定等腰直角数字三角形,请确定从顶至底的某个位置的一条路径,使该路径所经过的数字的总和最大。假设每一步可延直线向下或右斜线向下走。//从数字三角的(0,0)至(M-1,M-1)的最大和。printf("TrackSolution(追踪解)如下:\n");printf("随机数生成数字三角形如下:\n");printf("备忘录m三角形如下:\n");//数字下三角的行列数。

2023-04-25 16:21:00 78

原创 最长公共子序列

给定序列X、Y,当另一序列Z既是X的子序列又是Y的子序列,且对于其他任意公共子序列W,都有|W| ≤ |Z|,则称Z是X和Y的最长公共子序列,记为LCS(X,Y)。printf("X和Y的LCS: %d \n",s);printf("X和Y的LCS是:");printf("请输入字符串X:");printf("请输入字符串Y:");最长公共子序列的长度和其中包含的元素。//打印X和Y的LCS。

2023-04-25 16:19:25 29

原创 动态规划算法2

给定n个整数(可能为负数)组成的序列X,求该序列如x[i]+x[i+1]+…+x[j]的子段和的最大值。当所给的整数均为负数时定义子段和为0,依此定义,所求的最优值为: Max{0,x[i]+x[i+1]+…+x[j]},1<=i<=j<=n。printf("枚举:\n sum=%d\n",MaxSum(30,a,besti,bestj));printf("分治:\n sum=%d\n",MaxSubSum(a,0,30));printf("动态规划:\n sum=%d",MSum(30,a));

2023-04-25 16:13:21 35

原创 动态规划算法

if(i==0&&j!if(i==0&&j!printf("递推小萝卜最优结果为%d\n",c[4][4]);printf("最优萝卜矩阵如下:\n");printf("一片萝卜地如下:\n");//萝卜数矩阵,最优萝卜数矩阵。

2023-04-25 16:07:29 41

原创 分治算法2

/找到key,返回所在位置(递归结束)printf("位置在数组第%d个",BinSearch(a,0,9,key));//找到key,返回所在位置(递归结束)return -1;return -1;

2023-04-25 16:06:05 67

原创 分治算法。

void QuickSort(int s[], int start, int end) { // 定义函数QuickSort()void QuickSort(int s[], int start, int end) { // 定义函数QuickSort()s[i] = s[j];// 将s[j]放到s[i]的位置上。// 将大于基准值的s[j]放到s[i]位置。// 将s[j]放到s[i]的位置上。// 将大于基准值的s[j]放到s[i]位置。

2023-04-15 23:21:19 36

原创 递归算法的基本思想与实现

输入任意一个不大于9位的正整数,输出各位数的逆序形式,例如:输入12345,输出54321。请分别利用递归和递推两种方式编写程序求解问题。分治算法就是把1个分为多个,递归法就是把多个归一的解决问题方法。void oppsite(int n) { //逆序输出函数。printf("将%d进行操作",n);边界条件(基本项)和递归方程。

2023-04-15 22:29:56 97 1

原创 排序算法数据

对照插入排序算法的伪代码编程实现插入排序算法,输出数组检查排序编程结果的正确性。:编程实现随机数生成,将随机数保存到数组中。printf("排序后:");

2023-04-11 18:10:37 44

原创 完美立方求解

请按照a的值,从小到大依次输出。当两个完美立方等式中a值相同时,b值小的优先输出,若b仍相同,c值小的优先输出,c再相同时d值小的先输出。时间单位过于依赖于特定计算机的选择和技术的演变,并且不同机器上执行一条语句的时间各不相同,以时间作为度量没有意义。

2023-04-11 11:41:48 85 1

原创 百钱百鸡问题

百钱百鸡问题C求解

2023-04-11 11:36:49 56 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除