装配线调度2025年3月17日 | 阅读 3 分钟 问题陈述这是可以使用动态规划方法解决的流行问题之一。装配线是工业用来以更少的人力和更快的速度制造产品的机制。在装配线上,原材料被放置在线上,经过几个步骤后,对原材料进行一些操作。 在这个问题中,我们有两条装配线,每条线有 **N** 个站点。N 个站点具有喷漆、塑形等功能。两条线在工作方面是相同的,除了所用的时间。 e1 和 e2 分别是进入装配线 1 和装配线 2 所需的进入时间。 此外,x1 和 x2 分别是对应生产线的退出时间。 如果我们处于任何一个特定的站点,我们将加上该特定站点的运行时间,然后移动到下一个站点。我们有下一个站点的两个选项,要么我们可以去同一生产线的下一个站点,要么我们可以去另一生产线的下一个站点。如果我们选择去另一生产线的下一个站点,我们将需要加上从装配线移动的转换时间。 最后,我们需要计算从装配线退出产品所需的最小时间。 例如 ![]() 我们有两条装配线,假设我们决定选择突出显示的路径。所花费的时间为 8+12+5+4+3+2+10+12+8+9+2 = 75 单位。 我们必须选择花费时间最少的路径。 方法 1我们将使用递归方法来解决这个问题。因为在每个站点,我们都有两种可能性,要么我们可以去同一生产线的下一个站点,要么去另一生产线的下一个站点。 Java 代码 输出 ![]() 说明 在上面的代码中,我们有两个二维数组。一个数组用于两条生产线每个站点的运行时间,另一个二维数组用于转换时间。 我们可以从生产线 1 或生产线 2 开始。我们有两个选择,所以我们取两者选项的最小值并开始递归调用。 在每个站点,我们进行了两次递归调用,并返回两个结果的最小值。对于基本情况,如果我们处于最后一个站点,我们将加上该站点的运行时间和该生产线的退出时间并返回该值。 由于在每个连续的步骤中,我们都有两个递归选择,所以 时间复杂度:O(2n),其中 n 是站点的数量。 空间复杂度:O(n) 用于递归。 方法 2由于存在重叠的递归调用,我们将使用动态规划方法来解决此问题。我们将为此问题使用制表方法,并且我们将从表的底部向上移动以获得结果。 Java 代码 输出 ![]() 时间复杂度:O(nx2) 空间复杂度:O(nx2) 我们可以将时间复杂度降低到常数,因为在表中,我们只需要下一迭代的两个条目,这些条目已经解决了。 方法 3Java 代码 输出 ![]() 说明 在上面的代码中,我们只使用了四个变量而不是数组,这与站点的数量无关,因此它是常数时间。 时间复杂度:(nx2) 空间复杂度:O(1) 下一个主题图的广度优先搜索或 BFS |
堆内存 堆内存,通常称为“堆”,是计算机内存的一个部分,允许在程序运行时动态分配内存。单词“heap”指的是一个定义明确的区域,其中即时分配的数据存储在该区域中,而不是暗示一个混乱的内存堆栈...
阅读 3 分钟
问题陈述:您有一个由英文字母组成的字符串 s。您的任务是查找并返回同时出现在字符串中的小写和大写形式的英文字母。如果没有这样的字母,则返回一个空字符串。Java 实现……
阅读 4 分钟
介绍堆叠和混合是机器学习中两种强大且流行的集成方法。它们非常相似,区别在于如何分配训练数据。它们因在 Kaggle 竞赛中获胜的受欢迎程度和表现而尤为突出。堆叠堆叠或堆叠泛化由...引入。
阅读 4 分钟
在二叉搜索树中,最小值和最大值概念在查找树中可能不存在的元素方面起着至关重要的作用。二叉搜索树中给定值的最小值是指小于...
阅读 6 分钟
引言 图论是一门重要的数学分支,它研究对象之间的成对关系。在图论中,有许多问题,其中之一是顶点覆盖问题。在计算机科学和组合优化中,顶点覆盖是一个经典问题,具有...
阅读 4 分钟
问题陈述:给定一个按字典顺序排序的字符串数组。您的任务是确定此数组中使用的字符顺序。例如,数组 = ["baa", "abcd", "abca", "cab", "cad"] 在上面的示例中,字符的顺序将是 b、d、a、c。所以,我们有...
7 分钟阅读
创建一个函数,该函数将链表中的每 t 个节点反转(t 是函数的输入)。示例:• 输入:11->12->13->14->15->16->17->18->NULL, t = 3 输出:13->12->11->16->15->14->18->17->NULL • 输入:11->12->13->14->15->16->17->18->NULL, t = 5 输出:15->14->13->12->11->18->17->16->NULL 算法:reverse(head, t) 反转第一个...
阅读 4 分钟
引言:在直接代数和数学中,围绕其斜线进行镜像的矩阵概念,通常称为斜线镜像或反射,是一种基础操作。此操作涉及对矩阵进行变换,使其相对于...对称。
阅读 8 分钟
简介 单词阶梯定义为达到目标单词的最短链长度。挑战在于找到最短的一系列变形,使用一组允许的变形将一个给定单词更改为另一个单词。每个变形只更改一个字母……
阅读 12 分钟
被称为数组对总可整除性问题的计算挑战,涉及识别数组中元素对,其和可被指定的除数整除。给定一个整数数组和一个除数“k”,目标是找出所有元素对...
阅读 8 分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India