首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

顺时针打印矩阵

前言 有一个矩阵,如何按照外向里以顺时针的顺序依次打印出每一个元素?本文将跟大家分享下这个算法,欢迎各位感兴趣的开发者阅读本文。..., 16] ]; 顺时针访问一个矩阵,那么它的访问过程就如下图所示: image-20220902162024010 观察上图后,我们可以很明显的知道可以通过一个循环来打印这个矩阵,每次打印矩阵的一个圈...假设矩阵的行数为rows,列数为cols,打印第一圈的左上角坐标是(0,0),第二圈的左上角坐标是(1,1),以此类推,我们注意到左上角的坐标中,行标与列标总是相同的,于是可以在矩阵中选取左上角为(start...我们来分析下每一步的执行条件: 第一步是必须的,因为打印一圈至少有一步 start作为行坐标 start位置开始遍历至终止列号,将其作为列坐标 输出每一个元素 image-20220902222318145...实现代码 经过上面的分析,我们已经有了缜密的逻辑,接下来我们就可以愉快地进行编码了,如下所示: // 顺时针打印矩阵 export function PrintMatrix( matrix:

48220

顺时针打印矩阵

输入一个矩阵,按照外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下4 X 4矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10...在矩阵中用左上角的坐标(startX, startY)和右下角的坐标(endX, endY)就可以表示一个子矩阵,比如例子中的矩阵,当(startX, startY)=(0, 0)时、(endX, endY...)=(3, 3)时,表示的子矩阵就是整个矩阵,这个子矩阵的最外层如下:    1    2    3     4    5                 8    9                12...   13  14  15  16 如果能把这个子矩阵的外层转圈打印出来,那么就把startX, startY加1, 即(startX, startY) = (1, 1), 再把endX, endY减...1,即(endX, endY) = (2, 2),此时表示子矩阵如下    6     7   10   11 将这个子矩阵转圈打印出来,接着把startX, startY加1, 即(startX, startY

16820

Python打印列表中偶数

1 问题 列表的删除,用remove(a)函数,它删除列表s中a,假设有多个就删除第一个。用pop(a)函数,它删除列表中下标为a的值。...列表的下标是0开始的,假如你想删除第1个数则应为:s.pop(0)。)列表的删除s.clear()把列表s的值全部删除s变成一个空列表。...在创建一个列表时,这个列表中即奇数又有偶数,那我们应该怎么将其中的奇数删除,并将其新的列表打印出来呢? 2 方法 首先我们运用函数1到100中随机选取20个数字,然后用奇数的定义:不是2的倍数的数。...作为条件,用remove()函数删除奇数,再打印出最后的列表。...删除奇数以后的结果是:[10, 54, 78, 86, 18, 10, 78, 20, 32, 88, 92, 34] 3 结语 学习了运用函数随机选取数字,以及[::-1]的意思,X::n,X代表该位起

15010
领券