算法设计于分析
文章平均质量分 75
笙箫语陌
这个作者很懒,什么都没留下…
展开
-
印刷厂流水线问题(c实现)
例1 印刷厂流水想问题题目:某一印刷厂有6项加工任务,对印刷车间和装订车间所需时间如下任务J1J2J3J4J5J6印刷车间31252911装订车间8109631完成每项任务都要先去印刷车间印刷,再到装订车间装订。问怎么安排这6项加工任务的加工工序,使得加工总的工时最少算法分析:流水线问题:当车间规模m< 3时,可以找到一个最优的解可以去看一下Johnson算法反正我是看不懂,有那个大佬看懂了,麻烦指导一下虽原创 2022-04-23 18:10:41 · 3585 阅读 · 0 评论 -
图的遍历课后习题
例1:分数相加和为1题目:有一个数字1,2,3,….,9组成的数字串(长度不超过200),问如何将M(M<=20)个加号插到这个数字串中,使得形成的算数表达式的值最小,请编写一个算法解决这个问题。注意:加号不可加在字符串的最前面或者最后面,也不应该有两个或两个以上的加号相邻。M保证小于数字串的长度算法设计分析利用动态规划的方法:a) 分阶段有几个加号就分几个阶段b) 动态转移方程min( function(m-1,i,k-1),num(k,j))程序实现:原创 2022-04-17 13:36:11 · 1992 阅读 · 0 评论 -
深度优先遍历c
1. 深度优先遍历1. 算法框架1. 邻接表存储的搜索算法int visited[n];//n为结点的个数graph head[100];//graph为邻接表存储类型dfs(int k){//head图的顶点数组 edgenode * ptr;//图的指针 visited[k] = 1; print("访问",k); ptr = head[k].firstedge; while(ptr != null){//遍历至链表尾 if(visite原创 2022-04-13 20:17:20 · 1198 阅读 · 0 评论 -
广度优先遍历(c实现)
例1:城市最短路径问题1. 题目:已知若干个城市的地图,,求从一个初始到另一个城市的路径,要求该路径经过的城市最少2. 算法设计:我们可以使用广度优先遍历的思想来解决这个问题图的广度优先搜索类似于树的层次遍历,逐层搜索正好可以尽快找到一个结点与另一个结点相对而言最直接的距离程序实现#include<stdio.h>#define N 8//N表示有8个结点,进行宏定义再之后的修改时比较方便//建立一个存储图的结点信息的邻接矩阵int a[N][N] = {{0,原创 2022-04-11 18:28:38 · 2870 阅读 · 0 评论 -
背包问题详解(c实现)
题目:算法设计 建立二维数组a[6][14],接下来的讲解中 i表示行;j 表示列 设计数组a 先将 待选商品为0时的一行给设置为0 再将体积容量为0时的一列设置为0 其他设计 划分阶段 此题中有五件商品,则分为5个阶段 阶段1(i= 1):表示以第一件商品为主体时,求其最优子结构 阶段2(i= 2):表示以第二件商品为主体时,求其最优子结构原创 2022-04-09 11:46:10 · 723 阅读 · 0 评论 -
资源分配 (c实现)
1. 适用于动态规划解决问题得特征 最优化原理 是指一个问题的最优解,包括其子问题的最优解,或一个最优化策略的子策略总时最优的 无后向行 及某个阶段的状态一旦确定,求不受这个状态以后策略的影响 子问题重叠 即:子问题之间是不独立的,一个子问题在下一个阶段的决策中可能被多次使用到; 2.动态规划的基本思想1. 将求解的问题分成多个阶段或多个子问题,然后按顺序求解各子问题;前一子问题的解为后一子问题的解提供了有用的信息;2. 在求解任意子问题时,列出各种可.原创 2022-04-08 17:14:12 · 3525 阅读 · 0 评论