01正方体的迷宫:这是个蚂蚁要爬过的六面立方体。蚂蚁从某一面的中心开始,要沿着棱去相邻面的中心,每个面只能去一次,最后还要回到原点。其实我们只需要关心蚂蚁走过了哪些面,所以我们给每个面编个号,把相邻的面连起来,画成一张图。我们把正上方标记为1号,正下方标记为3号,面对我们的面是4号,和它相对的是2号,左边是5号,右边是6号。 02深度优先搜索算法:假设蚂蚁从1号面出发,就变成了找一条路径,把所有面都走一遍,然后再回到起点。计算机里通常用DFS来解决这种问题。DFS的思路就是先沿着一条路走到底,然后再回头去找别的路。这样就能找到8种不同的路径:比如1号面去2号面、3号面、5号面、4号面、6号面、再回到起点。 03四面同步展开:其实不仅仅是从1号面出发有8种路径,从2号、3号、4号、5号、6号中的任何一个面出发都可以找到8种路径。把这五个面的8种路径加起来乘以5就得到了32种总的方案数。所以无论怎么爬,蚂蚁都能回到原点,而且每个面只经过一次——共有32种不同的“爬行史诗”。 04赠送题:四元一次方程解法:今天有小伙伴问能不能不用图论来解决这个问题呢?当然可以啦。我们设四个未知数a、b、c、d分别代表四种面被经过的次数,列出方程组: a+b=8 c-d=6 a+c=13 b+d=8 把第二和第四个方程相加得到b+c=14,把第一和第三个方程相加得到2a+b+c=21。用这两个式子相减就能算出2a=7,所以a=3.5。把a代入第一个式子算出b=4.5,再代入第四个式子算出d=3.5,最后代入第二个式子算出c=9.5。四元一次方程组一次性解完了,答案和图论的结果完全一致。