最近算法课在讲解回溯法,回溯法是一种利用树结构,遍历全部可能结果,并输出最优解的算法,它能够保证每一种结果都考虑到,不会出现漏掉的情况。
在用回溯法时,重要的一步操作是画出解空间树,之后按照深度优先便利的操作,搜索每一个节点,直到搜索至叶子结点。在搜索过程中,我们要考虑这个节点是否能够满足问题的限制,如果不满足,则尽早进行剪枝操作,以减少不必要的遍历。
具体问题描述如下: 有一批共n个集装箱要装上2艘载重量分别为c1和c2的轮船,其中集装箱i的重量为wi,且,装载问题要求确定是否有一个合理的装载方案可将这些集装箱装上这2艘轮船。如果有