逻辑首先有控制台写了一下. 需要注意的地方不少: 进一步,需要考虑3个层面的问题. 前面的位置是空地,成功点,墙,还是箱子. 前面是箱子的时候,箱子的前面是空地,墙,成功点,还是箱子. 当移动的时候,原先人的地点是空地,成功点,需要恢复. 需要后退一步的时候,需要考虑两种情况. 恢复两个点的节点原先值. 由于上面2的情况,需要恢复3个点的原先值. Source Code: using System; using System.Collections.Generic; using System.L