心态(回溯算法总结)

今天跟着代码随想录写到了回溯算法的最后一章,一打开我就惊呆了,里面三道题,全都写着可跳过。于是我就点开第一篇总结文档,里面总结了自开始以来做过的类型:

  • 组合问题:N个数里面按一定规则找出k个数的集合
  • 排列问题:N个数按一定规则全排列,有几种排列方式
  • 切割问题:一个字符串按一定规则有几种切割方式
  • 子集问题:一个N个数的集合里有多少符合条件的子集
  • 棋盘问题:N皇后,解数独等等

并且总结了前四种类型的方法和注意点。

然后就是今天的重头戏——棋盘问题,今天的题目中有两道都是棋盘问题,N皇后和解数独。刚开始我还是抱着看看的态度,结合着题目看解析,当看到N皇后时,觉得自己应该可以做出来,于是就开始尝试。经过不断的完善,只有判断条件出了点问题,然后看了一眼判断的解析之后就顺利做出来了。说的容易,但是还是写了两个小时,感觉很有成就感,因为这是一道困难题。

在这道题中,我学习到了思路在写算法中的重要性,有了正确的思路,算法就写出来了一半。最重要的是思路,而最基础的是心态,其实困难的题有了思路之后也并不是特别的难,有一个良好的心态对写出算法也有着至关重要的帮助。

你可能感兴趣的:(算法,数据结构)