19. 顺时针打印矩阵
题目
输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下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]
解答
循环
行数m,列数n。不难发现这是一个循环
i = 0, j++
j = n-1, i++
i = m-1, j--
j = 0, i-- i = 1, j++
j = n-2, i++
j = m-2, j--
j = 1, i--
代码
class Solution {public:vector<int> printMatrix(vector<vector<int> > matrix) {int m = matrix.size(), n = matrix[0].size();int i = 0, j = 0, k = 0;vector<int> print;while(1){if(j == n - k) break;for(; j < n - k; j++)print.push_back(matrix[i][j]);i++; j--;if(i == m - k) break;for(; i < m - k; i++)print.push_back(matrix[i][j]);i--; j--;if(j < k) break;for(; j >= k; j--)print.push_back(matrix[i][j]);k++;i--; j++;if(i < k) break;for(; i >= k; i--)print.push_back(matrix[i][j]);i++; j++;}return print;}
};
19. 顺时针打印矩阵相关推荐
- 剑指offer(19): 顺时针打印矩阵
题目描述 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下4 X 4矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数 ...
- 矩阵每一行重复_python:19.顺时针打印矩阵
题目描述 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下4 X 4矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数 ...
- 19.顺时针打印矩阵
题目描述 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1,2, ...
- 剑指offer十九之顺时针打印矩阵
一.题目 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1,2, ...
- java程序输出矩阵_java编程题之顺时针打印矩阵
本文实例为大家分享了java顺时针打印矩阵的具体代码,供大家参考,具体内容如下 import java.util.ArrayList; /** * * 剑指offer编程题(JAVA实现)--第19题 ...
- 【完整可运行代码】剑指 Offer 29. 顺时针打印矩阵
立志用最少的代码做最高效的表达 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字. 示例 1: 输入:matrix = [[1,2,3],[4,5,6],[7,8,9]] 输出:[1,2, ...
- php 顺时针打印矩阵,这题
浅谈狄利克雷相关题目套路2021-03-25 21:58:20 啥都不知道,被yyc D爆了/kk 扔道题 P2714 四元组统计 乍一看,就想推式子,结果发现自己是个憨批 莫反就两条式子 考虑第二种 ...
- 剑指offer:面试题29. 顺时针打印矩阵
题目:顺时针打印矩阵 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字. 示例 1: 输入:matrix = [[1,2,3],[4,5,6],[7,8,9]] 输出:[1,2,3,6,9 ...
- 【剑指offer】顺时针打印矩阵
转载请注明出处:http://blog.csdn.net/ns_code/article/details/26053049 剑指offer上的第20题,九度OJ上測试通过. 题目描写叙述: 输入一个矩 ...
最新文章
- linux下文本模式不能登录,图形可以登录
- 百度搜索资源平台添加自己的网站
- mysql 共享锁和排他锁 意向锁 记录锁 Gap Locks Next-Key Locks 插入意向锁介绍
- Python之父推荐!《Python 3网络爬虫开发实战》第二版!文末送签名版!
- python数据检索_python – Hachoir – 从组中检索数据
- Mysql Workbench中EER Diagram逆向生成表
- 14个非常棒的 JavaScript 游戏开发框架推荐
- ECharts力导向布局图增加滚动条
- SWT/JFace常用组件----容器类
- 打造自己的VC++ 6.0免安装简版
- 生产环境-linux-tomcat宕掉-乌龙事件
- 叠螺机_火锅底料加工车间废水离不开叠螺机应用
- Oracle 数据库安装教程(11g)
- DSP CCS5.5安装步骤
- 【转】Unity 对象池(Object Pooling)理解与简单应用
- itunes store服务中断_Apple目前正在经历App Store iTunes Store和Mac App Store的中断
- Codeforces Gym 100015F Fighting for Triangles 状态压缩DP
- 多多买菜代收被叫停?拼多多这样回应
- LSwarm:复杂城市场景下覆盖受限的大集群高效避碰(Swarm-2019)
- SpringBoot整合邮件发送
热门文章
- javabean和java类_java对象 POJO和JavaBean的区别
- oracle or 运算,Oracle Or子句
- apache在线升级yum_基于Redis实现在线游戏积分排行榜 - phyger
- centos7启动root账户_新手小白使用vm安装Linux系统centos7虚拟机详细教程
- python | while循环与for循环 | 循环嵌套 | pass通用类型,循环整体结束或开始下一轮循环
- oracle+gsm安装,针对Oracle的10G版本提升SCOTT为DBA脚本!
- 【已解决】抱歉,由于某种原因,PowerPoint 无法加载D:\mathtype\Office Support\64\MathType(PowerPoint 2016).ppam加载项。
- django和mysql
- 提升访问github.com网址的速度
- c/c++入门教程 - 3 职工管理系统 完整代码