【数据结构与算法】之深入解析“滑动谜题”的求解思路与算法示例
一、题目要求在一个 2 x 3 的板上(board)有 5 块砖瓦,用数字 1~5 来表示,以及一块空缺用 0 来表示。一次移动定义为选择 0 与一个相邻的数字(上下左右)进行交换,最终当板 board 的结果是 [[1,2,3],[4,5,0]] 谜板被解开。给出一个谜板的初始状态 board,返回最少可以通过多少次移动解开谜板,如果不能解开谜板,则返回 -1。示例 1:输入:board = [[1,2,3],[4,0,5]]输出:1解释:交换 0 和 5 ,1 步完成示例 2:
复制链接