图论21(Leetcode695.岛屿的最大面积)

news/2024/7/15 18:42:01 标签: 图论, 算法, 数据结构

代码:

class Solution {
    int[][] dirs = {{-1,0},{1,0},{0,1},{0,-1}};
    public int maxAreaOfIsland(int[][] grid) {
        int max = 0;
        for(int i=0;i<grid.length;i++){
            for(int j=0;j<grid[0].length;j++){
                if(grid[i][j]==1){
                    int[] start = {i,j};
                    int area = getArea(start,0,grid);
                    max = max>area?max:area;
                }
            }
        }
        return max;
    }
    public int getArea(int[] start, int area, int[][] grid){
        grid[start[0]][start[1]] = -1;
        area++;
        for(int i=0;i<dirs.length;i++){
            int x = start[0]+dirs[i][0];
            int y = start[1]+dirs[i][1];
            if(x>=0&&x<grid.length&&y>=0&&y<grid[0].length&&grid[x][y]==1){
                int[] cur = {x,y};
                area = getArea(cur,area,grid);
            }
        }
        return area;
    }
}


http://www.niftyadmin.cn/n/5045970.html

相关文章

车辆检测:An Efficient Wide-Range Pseudo-3D Vehicle Detection Using A Single Camera

论文作者&#xff1a;Zhupeng Ye,Yinqi Li,Zejian Yuan 作者单位&#xff1a;Xian Jiaotong University 论文链接&#xff1a;http://arxiv.org/abs/2309.08369v1 项目链接&#xff1a;https://www.youtube.com/watch?v1gk1PmsQ5Q8 内容简介&#xff1a; 1&#xff09;方…

前端教程-vite

官网 Vite中文网 视频教程 Vite世界指南&#xff08;带你从0到1深入学习 vite&#xff09;

win11 允许使用脚本Set-ExecutionPolicy

目录 Set-ExecutionPolicy RemoteSigned notepad.exe $PROFILE Set-ExecutionPolicy RemoteSigned Set-ExecutionPolicy RemoteSigned 如果报错&#xff0c;执行&#xff1a; Set-ExecutionPolicy -Scope CurrentUser 然后就会提示我们输入&#xff0c;我们把刚刚的 Remot…

利用git的贮藏功能

可以将自己分支的当前状态贮藏切换到其它分支再切换回来的时候&#xff0c;应用就行了

Unity 发布WebGL平台,C#与JavaScript交互

发布H5平台&#xff0c;接入SDK&#xff0c;比如微信等&#xff0c;涉及到C#与JS的交互。 jslib&#xff08;JavaScript Library&#xff09;是Unity的一种机制&#xff0c;允许你在C#中通过JavaScript代码来执行一些操作。这是一种高级的技巧&#xff0c;主要用于一些特殊情况…

虚拟机如何连接MobaXterm

MobaXterm是一款增强型远程连接工具&#xff0c;Xshell相似。可以与虚拟机连接&#xff0c;从而在Windows界面下对其进行相关操作&#xff0c;使用非常的便捷 1.下载vmware并且在上面安装虚拟机任意版本。这里我安装的是centos7&#xff08;2009&#xff09; 2.打开终端 输入命…

lvgl lv_anim_path_ease_in函数

lv_anim_path_ease_in函数是一个路径函数&#xff0c;它用于创建一个缓动曲线效果&#xff0c;使得动画在开始时缓慢加速。它的具体用法与lv_anim_path_ease_out函数类似&#xff0c;只需要将lv_anim_path_ease_in作为参数传递给lv_anim_set_path函数即可。 /* Create an intro…

面试题:说说Java并发运行中的一些安全问题

文章目录 1.什么是多线程并发运行安全问题&#xff1f;2.用synchronized修饰的方法3.同步块4.使用Synchronized修饰静态方法5.互斥锁6.死锁现象7.wait()和sleep()的区别 1.什么是多线程并发运行安全问题&#xff1f; 当多个线程并发操作一个数据时&#xff0c;由于线程操作的时…