leetcode_54
Golang: 声明:这题我首先用了JAVA语言去实现,在通过所有测试用例后,发现结果如下: 测试结果 我觉得我实现的超烂,时间复杂度上(我预估)是超烂,空间复杂度上(从程序里就能看出来)也是超烂,结果这个程序的时间复杂度这么好? 思路:因为我今天是第一次做这道题,所以在所有算法里我可能会先写暴力一点的算法,即先做出来,再考虑优化。先上暴力求解的思路,即通过循环来实现,我们可以很明显的看出,螺旋式,其实就像剥洋葱一样,是一层一层地去剥的,我们可以拆解为,先输出最外圈,再输出内圈,当第一层外圈被输出后,第二层内圈即变成原来的外圈,于是就可以一直输出。 具体实现:我们可以考虑三种类型的二维数组,行数远大于列数的,列数远大于行数的,以及行数等于列数的。 那么问题有: 一共要剥几层? 在这里我认为,...阅读全文