算法分析
文章平均质量分 65
hks_Luo
加油加油!
展开
-
高铁货运站的调配问题(Java)
问题描述 我们国家大力发展道路交通基础设施,最近这些年修建了大量的高铁线路,以促进国内的物资运输和调配,ZZ是一个超级货运站,是连接亚欧货运的枢纽站,现在ZZ货运站列车调度铁轨的结构如下图所示。 两端分别是一条入口(Entrance)轨道和一条出口(Exit)轨道,它们之间有N条平行的轨道。每趟列车从入口可以选择任意一条轨道进入,最后从出口离开。在图中有9趟列车,在入口处按照{8,4,2,5,3,9,1,6,7}的顺序排队等待进入。如果要求它们必须按序号递减的顺序从出口离开,则至少需要多少条平行铁轨用于调原创 2021-05-13 09:28:06 · 236 阅读 · 0 评论 -
多边形游戏-动态规划(Java)
问题说明 开始时一个由n个顶点构成的多边形。每个顶点被赋予一个整数值,每条边被赋予一个运算符“+”或“ × ”。所有边依次用整数从1到n编号。之后,将相邻两个顶点的数值按照两数之间的边对应的运算符进行运算,然后删掉这条边,两个顶点合称为一个顶点,这个新顶点上的数就是上面运算的结果。直到最后所有边都被删除,剩下一个顶点,顶点上的数就是多边形游戏得分。 问题分析 n边形我们可以看成是一个首尾相连的圆,当然就可以使用循环链表实现了,但是这样一来就太麻烦了。对于这个问题,当我们选中一个点作为起点之后,我们不原创 2021-04-26 16:40:25 · 1450 阅读 · 1 评论 -
捡石子-动态规划
问题描述 一共有N堆石子,排成一排,每一堆的石子数量不同,每次我们只能选择相邻两个石子捡起来形成一堆石子,新生成的石子数量是原来两堆石子的数量的和,我们把这单次捡石子的和记为Xi,求得SUM=X1+X2+X3…的最小值。 算法分析 我们对于编号为i ~ j 的石头堆讨论,选择第k堆石头,将 i ~ k-1 和 k ~ j 堆石头合并(假设 i ~ k-1 和 k ~ j 堆石头两堆的最小值已知),将k从最小值取到最大值获得的最小值就是我们要求的结果。同时我们递归解决 i ~ k-1 和 k ~ j 堆原创 2021-04-24 21:38:14 · 523 阅读 · 3 评论