设计整体宏观方法论
下面几道题均涉及到一些具体的要求,如果按照内部具体的运动轨迹和变化则很难去看出真正的规律并且用代码实现,因此需要学会在宏观上设计,不拘泥于小节,利用整体的框架去思考。
题目五:转圈打印矩阵
转圈打印矩阵需要思考的是:左上角的坐标和右下角的坐标可以确定边框,从而可以让行不变列++,从而使得横框画出来,类似可以画出来整体。确定好边框之后画完再将横纵坐标减一,右下角的横纵坐标加一,从而又可以确定一个新的框,最终实现转圈打印矩阵的算法。
题目六:旋转正方形矩阵
旋转矩阵和转圈打印矩阵其实是一个道理,确定好边框之后,再确定一次变换的点数(四个),依次使其变化,最外框确定出来之后再像中心收缩,从而实现旋转正方形。
题目七:反转单向双向链表
略
题目八:之字形打印
之字形打印实现的函数需要告知的有两部分:
1.确定走直线的两端
2.走直线,左下还是右上
在行列都排好序的矩阵中找数
左上角和右下角开始,通过数据和矩阵中的数据进行比较
优良解法的优化思路:数据状况和题目问法/标准出发