当前位置: 首页 > news >正文

Leetcode54. 螺旋矩阵

问题描述:

给你一个 mn 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。

示例 1:

输入:matrix = [[1,2,3],[4,5,6],[7,8,9]]
输出:[1,2,3,6,9,8,7,4,5]

示例 2:

输入:matrix = [[1,2,3,4],[5,6,7,8],[9,10,11,12]]
输出:[1,2,3,4,8,12,11,10,9,5,6,7]

提示:

  • m == matrix.length
  • n == matrix[i].length
  • 1 <= m, n <= 10
  • -100 <= matrix[i][j] <= 100

上代码,拿去即可运行:

package com.onlyqi.daydayupgo01.test;import java.util.ArrayList;
import java.util.List;public class Test28 {public static void main(String[] args) {int[][] matrix = {{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}};System.out.println(spiralOrder(matrix));}public static List<Integer> spiralOrder(int[][] matrix) {List<Integer> integerList = new ArrayList<>();int rows = matrix.length, columns = matrix[0].length;int left = 0, right = columns - 1, bottom = rows - 1, top = 0;// 列行行列---》也即:横-竖-反向横-反向竖while (left <= right && top <= bottom) {for (int column = left; column <= right; column++) {integerList.add(matrix[top][column]);}for (int row = top + 1; row <= bottom; row++) {integerList.add(matrix[row][right]);}if (left < right && top < bottom) {for (int column = right - 1; column > left; column--) {integerList.add(matrix[bottom][column]);}for (int row = bottom; row > top; row--) {integerList.add(matrix[row][left]);}}left++;right--;top++;bottom--;}return integerList;}}

慢慢来才是最快的方法--天涯明月    共勉

我要刷300道算法题,第135道 。 希望自己可以坚持下去  。


http://www.mrgr.cn/news/61873.html

相关文章:

  • 在Windows下通过pip安装Selenium
  • 新能源电池热失控检测传感器的作用有哪些?
  • Java开发者的Python快速进修指南:控制之if-else和循环技巧
  • 【electron8】electron实现“图片”的另存为
  • 沪深A股上市公司数据报告分析
  • C++初阶(七)--类和对象(4)
  • 【从零开始的LeetCode-算法】3216. 交换后字典序最小的字符串
  • 基于 Java Swing 实现的简单科学计算器
  • 使用 async/await 时未捕获异常的问题及解决方案
  • 【C++】结构体、enum、union回顾
  • 全面解析:轻松掌握多模态技术精髓
  • YOLOv11改进策略【注意力机制篇】| ICLR2023 高效计算与全局局部信息融合的 Sea_Attention 模块(含C2PSA二次创新)
  • 【Linux】环境ChatGLM-4-9B 模型部署
  • 消息队列-Rabbitmq(消息发送,消息接收)
  • 什么情况下会导致 RCU CPU Stall 警告?
  • 平价开放式耳机品牌推荐有哪些?五大性价比开放式耳机推荐!
  • 代码随想录算法训练营第十五天|110平衡二叉树、257二叉树的所有路径 、404左叶子之和、222完全二叉树的节点个数
  • 收藏 | 推荐15个数据可视化图表绘制网站
  • Windows on ARM编译python的sherpa-onnx库
  • 网络准入控制
  • 直播推流和拉流--系统篇
  • 【机器学习(二十二)】零代码开发之LightGBM算法-Sentosa_DSML社区版
  • ssm014基于JSP的乡镇自来水收费系统+jsp(论文+源码)_kaic
  • 需求挖掘时,深入访谈5大技巧!
  • 【话题】Midjourney与未来设计:AI绘画工具能否取代人类创造力?
  • Nature子刊丨可再生能源对电力系统天气脆弱性的影响