DFS的变形,不同的是每次选择的是最优的一个子结点,即局部最优解
例如,对于8数码问题,设置一个函数表示放错位置的数目,每次选择子结点中放错最少的结点
步骤:
1.建立一个栈,将根结点放入栈
2.判断栈顶元素是否是目标结点,如果是,算法结束,如果不是,进入第三步
3.栈顶元素出栈,根据评估函数计算的顺序将此结点的子结点入栈
4.如果栈空,则输出失败,否则,进入第二步

DFS的变形,不同的是每次选择的是最优的一个子结点,即局部最优解
例如,对于8数码问题,设置一个函数表示放错位置的数目,每次选择子结点中放错最少的结点
步骤:
1.建立一个栈,将根结点放入栈
2.判断栈顶元素是否是目标结点,如果是,算法结束,如果不是,进入第三步
3.栈顶元素出栈,根据评估函数计算的顺序将此结点的子结点入栈
4.如果栈空,则输出失败,否则,进入第二步