标签:C++

算法笔记之分支限界法(1)

广度优先 广度优先搜索,其实就是层次遍历,程序采用队列来实现。 算法思想 从根开始,常以BF或以最小耗费(即最大收益)优先的方式搜索问题的解空间树。首先将根结点加入活结点表,接着从活结点表中取出根结点,使其成为当前扩展结点,一次性生成其所有…

算法笔记之回溯法(3)

最优加工顺序 问题描述 现在有3个机器零件{J1,J2,J3},在第一台机器上的加工时间分别为2、5、4,在第二台机器上的加工时间分别为3、1、6.如何安排零件加工顺序,使第一个零件从机器1上加工开始到最后一个零件在机器2上加工完成,所需的…

算法笔记之回溯法(1)

回溯法 回溯法的思想是:能进则进,进不了换,换不了退。 隐约束指对能否得到问题的可行解和最优解做出的约束。隐约束包括约束函数和限界函数。 关键步骤是: 1. 定义解空间; 2. 确定解空间的组织结构(子集树、排列数、m叉树等); 3. 搜索…

《剑指Offer》题目解析(1)

题目1 二维数组中的查找 题目描述 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 题目解析 …