题目描述:
输入一个矩阵,按照从外向里以顺时针打印出每一个数字,例如:输入如下矩阵,
则依次打印出的数字为:
1、2、3、4、8、12、16、15、14、13、9、5、6、7、11、10
算法思路
打印顺序如图所示:
顺时针打印,从外到里,不失普遍性针对所有循环圈都是:
第一步: 先打印上面一条边,再打印右边一条边,再打印下面一条边,最后打印左边一条边。打印一圈以后,左上角的指针像右下角移动,右下角的元素指针向左上角移动,即
第二步: 之后便是循环执行第一步的逻辑
第三步: 那么什么时候循环终止呐?就是当左上角的行指针大于右下角的行指针 或 左上角的列指针大于右下角的列指针 时,循环终止,此时顺时针打印全部完成。