博客
关于我
螺旋矩阵-ii(数组)
阅读量:366 次
发布时间:2019-03-04

本文共 939 字,大约阅读时间需要 3 分钟。

题目描述

给定一个整数n,将数字1到n^2n

2
按螺旋的顺序填入n×n的矩阵
例如:
给出的n=3,
你应该返回如下矩阵:
[
[ 1, 2, 3 ],
[ 8, 9, 4 ],
[ 7, 6, 5 ]
]

class Solution {   public:    /**     *      * @param n int整型      * @return int整型vector
<>> */ vector
> generateMatrix(int n) { // write code here vector
> matrix(n, vector
(n)); int left = 0; int right = n-1; int up = 0; int down = n-1; int index = 1; while(left <= right && up <= down){ for(int i = left; i <= right && up <= down; i++){ matrix[up][i] = index; index++; } for(int i = up+1; i <= down && left<= right; i++){ matrix[i][right] = index++; } for(int i = right-1; i >= left && up <= down; i--){ matrix[down][i] = index++; } for(int i = down-1; i >= up+1 && left <= right; i--){ matrix[i][left] = index++; } left++; right--; up++; down--; } return matrix; }};

在这里插入图片描述

错因分析

  • 我前面都是创建的(n+1)*(n+1)维的数组,导致答案一直出错

转载地址:http://eydg.baihongyu.com/

你可能感兴趣的文章
Nature | 电子学“超构器件”, 从零基础到精通,收藏这篇就够了!
查看>>
Nature和Science同时报道,新疆出土四千年前遗骸完成DNA测序,证实并非移民而是土著...
查看>>
Nature封面:只低一毫米,时间也会变慢!叶军团队首次在毫米尺度验证广义相对论...
查看>>
Nat、端口映射、内网穿透有什么区别?
查看>>
Nat、端口映射、内网穿透有什么区别?
查看>>
nat打洞原理和实现
查看>>
NAT技术
查看>>
NAT模式/路由模式/全路由模式 (转)
查看>>
NAT模式下虚拟机centOs和主机ping不通解决方法
查看>>
NAT的两种模式SNAT和DNAT,到底有啥区别?
查看>>
NAT的全然分析及其UDP穿透的全然解决方式
查看>>
NAT类型与NAT模型详解
查看>>
NAT网络地址转换配置实战
查看>>
NAT网络地址转换配置详解
查看>>
navbar navbar-inverse 导航条设置颜色
查看>>
Navicat for MySQL 命令列 执行SQL语句 历史日志
查看>>
Navicat for MySQL 查看BLOB字段内容
查看>>
Navicat for MySQL笔记1
查看>>
Navicat for MySQL(Ubuntu)过期解决方法
查看>>
Navicat Premium 12 卸载和注册表的删除
查看>>