剑指offer 20:顺时针打印矩阵
题目描述
解题思路
class Solution {
public:
    vector<int> printMatrix(vector<vector<int> > matrix) {
        vector<int> result;
        int row=matrix.size();
        if(row==){
            return result;
           }
        int col=matrix[].size();
        if(col==){
            return result;
        }
        int  start=;
        while(start*<row && col>start*){
            printCycle(matrix,result,row,col,start);
            start++;
        }
        return result;
    }
    void printCycle(const vector<vector<int> > & ori, vector<int> & result,int row,int col, int start){
        int endrow=row-start-;
        int endcol=col-start-;
        for (int i=start;i<=endcol;i++){//从左向右打印一行
            result.push_back(ori[start][i]);
        }
        if(endrow>start){
            for (int i=start+;i<=endrow;i++){//从上到下打印一列
            result.push_back(ori[i][endcol]);
            }
        }
        if(endcol>start && endrow>start){
            for (int i=endcol-;i>=start;i--){//从右向左打印一行
            result.push_back(ori[endrow][i]);
            }
        }
        if(endcol>start && endrow>start+){
            for (int i=endrow-;i>start;i--){//从右向左打印一行
            result.push_back(ori[i][start]);
            }
        }
    }
};
剑指offer 20:顺时针打印矩阵的更多相关文章
- 《剑指offer》顺时针打印矩阵
		
本题来自<剑指offer> 顺时针打印矩阵 题目: 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下4 X 4矩阵: 1 2 3 4 5 6 7 8 9 1 ...
 - 剑指 Offer 29. 顺时针打印矩阵 + 蛇形矩阵 + 模拟 + 思维题
		
剑指 Offer 29. 顺时针打印矩阵 Offer_29 题目描述: 题解分析: 题目的初衷是将这道题当做一个简单题处理 这道题一开始想的太复杂了,其实可以参考迷宫广度优先搜索的过程,只不过在选定一 ...
 - 剑指 Offer 29. 顺时针打印矩阵
		
剑指 Offer 29. 顺时针打印矩阵 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字. 示例 1: 输入:matrix = [[1,2,3],[4,5,6],[7,8,9]] 输出: ...
 - 力扣 - 剑指 Offer 29. 顺时针打印矩阵
		
题目 剑指 Offer 29. 顺时针打印矩阵 思路1 其实就是按照理解题目的意思一步步从外层到内层打印出来,同时将一个外层分成四个部分分步打印 可以用一个变量count来维护当前打印的第几层 判断打 ...
 - 【剑指Offer】顺时针打印矩阵 解题报告(Python)
		
[剑指Offer]顺时针打印矩阵 解题报告(Python) 标签(空格分隔): 剑指Offer 题目地址:https://www.nowcoder.com/ta/coding-interviews 题 ...
 - 【剑指offer】顺时针打印矩阵
		
转载请注明出处:http://blog.csdn.net/ns_code/article/details/26053049 剑指offer上的第20题,九度OJ上測试通过. 题目描写叙述: 输入一个矩 ...
 - 剑指offer得意之作——顺时针打印矩阵
		
题目: 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1,2,3 ...
 - 【Java】 剑指offer(29) 顺时针打印矩阵
		
本文参考自<剑指offer>一书,代码采用Java语言. 更多:<剑指Offer>Java实现合集 题目 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字. 思 ...
 - Go语言实现:【剑指offer】顺时针打印矩阵
		
该题目来源于牛客网<剑指offer>专题. 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字. 例如,如果输入如下4 X 4矩阵:1 2 3 4 5 6 7 8 9 10 11 ...
 - 剑指offer——29顺时针打印矩阵
		
题目描述 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下4 X 4矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数 ...
 
随机推荐
- 基于asp.net(C#)MVC+前端bootstrap+ztree+lodash+jquery技术-Angel工作室通用权限管理
			
一.Angel工作室简单通用权限系统简介 AngelRM(Asp.net MVC Web api)是基于asp.net(C#)MVC+前端bootstrap+ztree+lodash+jquery技术 ...
 - (转)Skyline timeseries异常判定算法
			
原文链接:https://jiroujuan.wordpress.com/2013/10/09/skyline-anomalous-detect-algorithms/ Skyline内部提供了9个预 ...
 - java基础(6):方法
			
1. 方法 1.1 方法概述 在我们的日常生活中,方法可以理解为要做某件事情,而采取的解决办法. 如:小明同学在路边准备坐车来学校学习.这就面临着一件事情(坐车到学校这件事情)需要解决,解决办法呢?可 ...
 - JS基础语法---作用域链
			
从函数嵌套来分析: (层数一般5层内) var num=10; function f1() { var num=20; function f2() { var num=30; function f3( ...
 - cesium 入门开发系列矢量瓦片加载展示(附源码下载)
			
前言 cesium 入门开发系列环境知识点了解:cesium api文档介绍,详细介绍 cesium 每个类的函数以及属性等等cesium 在线例子 内容概览 cesium 实现矢量瓦片加载效果 源代 ...
 - docker 限制容器能够使用的资源
			
docker 限制容器能够使用的内存,CPU,I/O 资源概述,内存是非可压缩资源,cpu是可压缩资源. 内存用超了,就发送Out Of Memory Exception,容器会被kill掉.所以内存 ...
 - C# JsonConvert 序列号 DateTime类型 格式多T
			
序列化字符串后,值变成了"2018-02-05T00:00:00" 序列化时候 需要更改一下日期转换方式: IsoDateTimeConverter timeConverter = ...
 - Codeforces Round #593 (Div. 2)
			
传送门 A. Stones 签到. B. Alice and the List of Presents 单独考虑每个数的贡献即可. 答案为\((2^{m}-1)^n\). C. Labs 构造就类似于 ...
 - Java Web 学习(5) —— Spring MVC 之数据绑定
			
Spring MVC 之数据绑定 数据绑定是将用户输入绑定到领域模型的一种特性. Http 请求传递的数据为 String 类型,通过数据绑定,可以将数据填充为不同类型的对象属性. 基本类型绑定 @R ...
 - 推荐几个公众号Markdown格式化网站
			
好多人都喜欢用 Markdown 写文 但是公众号后台编辑又不支持 Markdown 因此,催生出了一系列 Markdown 渲染格式化的工具网站 我使用了其中的一些 分享给你 1.Md2All 官方 ...