博客
关于我
螺旋矩阵-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/

你可能感兴趣的文章
Netty源码—7.ByteBuf原理三
查看>>
Netty源码—7.ByteBuf原理四
查看>>
Netty源码—8.编解码原理一
查看>>
Netty源码—8.编解码原理二
查看>>
Netty源码解读
查看>>
netty的HelloWorld演示
查看>>
Netty的Socket编程详解-搭建服务端与客户端并进行数据传输
查看>>
Netty的网络框架差点让我一夜秃头,哭了
查看>>
Netty相关
查看>>
Netty简介
查看>>
Netty线程模型理解
查看>>
netty解决tcp粘包和拆包问题
查看>>
Netty速成:基础+入门+中级+高级+源码架构+行业应用
查看>>
Netty遇到TCP发送缓冲区满了 写半包操作该如何处理
查看>>
netty(1):NIO 基础之三大组件和ByteBuffer
查看>>
Netty:ChannelPipeline和ChannelHandler为什么会鬼混在一起?
查看>>
Netty:原理架构解析
查看>>
Network Dissection:Quantifying Interpretability of Deep Visual Representations(深层视觉表征的量化解释)
查看>>
Network Sniffer and Connection Analyzer
查看>>
Network 灰鸽宝典【目录】
查看>>