LeetCode题目-54

首页 编程分享 LEET_CODE 正文

leetCode 转载 编程分享 2024-06-07 07:06:42

简介 LeetCode题目-54


✏Leetcode基础刷题之(54. Spiral Matrix)


.

✏题目描述

*这道题很有意思,给定一个mn的矩阵,让我们以螺旋的形式返回。**


✏题目实例



✏题目分析

需要搞清楚返回的顺序,然后确定好边界,剩下的就是代码了,四个方向右->下->左->上的顺序,每一次遍历,上下左右各自向中心缩小一层,至于边界说白了就是行列。

✏最终实现代码

/**
     * @param Integer[][] $matrix
     * @return Integer[]
     */
    function spiralOrder($matrix) {
        if(empty($matrix)){
            return [];
        }
        $res=[];
        $r1=0;
        $r2=count($matrix)-1;
        $c1=0;
        $c2=count($matrix[0])-1;
        while($r1<=$r2 && $c1<=$c2){
            for($c=$c1;$c<=$c2;$c++) array_push($res,$matrix[$r1][$c]);
            for($r=$r1+1;$r<=$r2;$r++) array_push($res,$matrix[$r][$c2]);
            if($r1<$r2 && $c1<$c2){
                for($c=$c2-1;$c>$c1;$c--) array_push($res,$matrix[$r2][$c]);
                for($r=$r2;$r>$r1;$r--)  array_push($res,$matrix[$r][$c1]);
            }
            $r1++;
            $r2--;
            $c1++;
            $c2--;
        }
        return $res;
    }

转载链接:https://leetcode.cn/


Tags:


本篇评论 —— 揽流光,涤眉霜,清露烈酒一口话苍茫。


    声明:参照站内规则,不文明言论将会删除,谢谢合作。


      最新评论




ABOUT ME

Blogger:袅袅牧童 | Arkin

Ido:PHP攻城狮

WeChat:nnmutong

Email:nnmutong@icloud.com

标签云