算法入坑——之字形打印矩阵
题目: 之字形打印矩阵
难度: 低
对于一个矩阵,请设计一个算法,将元素按“之”字形打印。具体见样例。
给定一个整数矩阵mat,以及他的维数nxm,请返回一个数组,其中元素依次为打印的数字。
测试样例:
[[1,2,3],[4,5,6],[7,8,9],[10,11,12]],4,3
返回:[1,2,3,6,5,4,7,8,9,12,11,10]
**解题思路:**用其输出特点来解题,对于一个矩阵该题输出方式可理解为下标为偶数的行正向输出,下标为偶数的反向输出。与该题类似的题还有:旋涡型输出一个矩阵。这种题型千万不能按下标一个一个判断后输出。
该题的一个解:
public class PrintMatrix {public static int[] printM(int[][] mat, int n, int m) {int[] arr1 = new int[n * m];int p = 0;for (int i=0; i<n; ++i) {// 如果是奇数行System.out.println(i%2);if(i%2==0) {int k = 0;while(k != m) {arr1[p++] = mat[i][k++];}}else { // 偶数行int y = 0;while(y++!=m) {arr1[p++] =mat[i][m-y];}}}return arr1;}public static void main(String[] args) {int n = 4; // n是行数int m = 3;int[][] arr = {{1,2,3}, {4,5,6},{7,8,9},{10,11,12}};int[] is = printM(arr, n, m);for (int i : is) {System.out.print(i+" ");}}}
算法入坑——之字形打印矩阵相关推荐
- 算法练习day9——190327(“之” 字形打印矩阵、在行列都排好序的矩阵中找数、打印两个有序链表的公共部分、判断一个链表是否为回文结构)
1."之" 字形打印矩阵 [题目] 给定一个矩阵matrix, 按照"之" 字形的方式打印这个矩阵, 例如: 1 2 3 4 5 6 7 8 9 10 11 1 ...
- “之“字形打印矩阵(Java)
分享一个大牛的人工智能教程.零基础!通俗易懂!风趣幽默!希望你也加入到人工智能的队伍中来!请轻击http://www.captainbed.net package live.every.day.Pro ...
- “之”字形打印矩阵~
编程如下: 欢迎大家前来讨论~ public class PrintMatirx { public static void main(String args[]) { int arr[][] = { ...
- 矩阵的“之”字形打印
2019独角兽企业重金招聘Python工程师标准>>> 题目:给定一个矩阵matrix, 按照"之"字形的方式打印这个矩阵 例子: 1 2 3 4 5 ...
- 【剑指offer】顺时针打印矩阵
转载请注明出处:http://blog.csdn.net/ns_code/article/details/26053049 剑指offer上的第20题,九度OJ上測试通过. 题目描写叙述: 输入一个矩 ...
- 打印矩阵 java_【Java】 剑指offer(29) 顺时针打印矩阵
本文参考自<剑指offer>一书,代码采用Java语言. 题目 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字. 思路 每次打印矩阵最外面的一圈(用方法printMatrix ...
- 剑指offer:面试题29. 顺时针打印矩阵
题目:顺时针打印矩阵 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字. 示例 1: 输入:matrix = [[1,2,3],[4,5,6],[7,8,9]] 输出:[1,2,3,6,9 ...
- 剑指offer十九之顺时针打印矩阵
一.题目 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1,2, ...
- 《LeetCode力扣练习》剑指 Offer 29. 顺时针打印矩阵 Java
<LeetCode力扣练习>剑指 Offer 29. 顺时针打印矩阵 Java 一.资源 题目: 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字. 示例 1: 输入:matr ...
最新文章
- windows下载anaconda3速度太慢怎么办
- python开发要学哪些?
- C语言经典算法五个人问岁数!——————【Badboy】
- python闭包、装饰器
- redis部署架构总结
- OpenCV:OpenCV目标检测Hog+SWindow源代码分析
- ubantu 中配置Flash Player
- js如何保证iframe里的内容,显示在父窗口
- android组件化数据生命周期,Android组件化开发实践(七):开发常见问题及解决方案...
- 常见Sql面试题及答案
- Linux下C语言实现俄罗斯方块——详细版
- 软件multisim的安装教程
- 2020年CISP线下考试逐渐恢复啦
- 怎么压缩html的文件,css如何压缩?
- ENFJ型的人:什么样的人很适合人工智能方向
- 微信分享自定义图标大小限制_微信自定义分享限制分享
- 【SSRF技巧拓展】————8、微博某处SSRF可GET SHELL
- 2021年T电梯修理考试试卷及T电梯修理证考试
- SQL语言——联结表
- 【JAVA】堆、栈与方法区