博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LeetCode 53 Spiral Matrix
阅读量:6693 次
发布时间:2019-06-25

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

Given a matrix of m x n elements (m rows, n columns), return all elements of the matrix in spiral order.

For example,

Given the following matrix:

[ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ]]

You should return [1,2,3,6,9,8,7,4,5].

思路:设置四个边界变量。仅仅要不越界即可
public class Solution {	public List
spiralOrder(int[][] matrix) { ArrayList
al = new ArrayList
(); if (matrix.length == 0) return al; int x1 = 0; int y1 = 0; int x2 = matrix.length - 1; int y2 = matrix[0].length - 1; while (x1 <= x2 && y1 <= y2) { // up row for (int i = y1; i <= y2; ++i) al.add(matrix[x1][i]); // right column for (int i = x1 + 1; i <= x2; ++i) al.add(matrix[i][y2]); // bottom row for (int i = y2 - 1; x2 != x1&& i >= y1; --i) al.add(matrix[x2][i]); // left column for (int i = x2 - 1; y1 != y2 && i > x1; --i) al.add(matrix[i][y1]); x1++; y1++; x2--; y2--; } return al; }}

版权声明:本文博主原创文章,博客,未经同意不得转载。

你可能感兴趣的文章
hadoop命令执行hbase应用jar包时的环境变量加载问题
查看>>
XenMobile学习文章总结
查看>>
Android开发者的混淆使用手册
查看>>
Telnet服务及协议
查看>>
SpringMVC深度探险
查看>>
关于vs2010巨慢(cpu占用高)的几种解决方式
查看>>
简单3步,轻松集成Testlink和MantisBT
查看>>
SQL语句教程(04) AND OR
查看>>
Oracle中的JOIN
查看>>
html中iframe控制父页面刷新
查看>>
每天一个linux命令(50):crontab命令
查看>>
linux命令7--cat命令&nl命令
查看>>
.NET底层开发技术
查看>>
RHEL regiester
查看>>
c/c++中的一些基础知识
查看>>
练习:输出整数每一位,计算算数,9出现次数,输出图案,水仙花数
查看>>
操作系统的发展
查看>>
HEVC码流简单分析
查看>>
搭建蚂蚁笔记(服务器)
查看>>
lnmp
查看>>