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

LeetCode 面试题 08.10. 颜色填充

文章目录

  • 一、题目
  • 二、C# 题解

一、题目

  编写函数,实现许多图片编辑软件都支持的「颜色填充」功能。

  待填充的图像用二维数组 image 表示,元素为初始颜色值。初始坐标点的行坐标为 sr 列坐标为 sc。需要填充的新颜色为 newColor

  「周围区域」是指颜色相同且在上、下、左、右四个方向上存在相连情况的若干元素。

  请用新颜色填充初始坐标点的周围区域,并返回填充后的图像。

示例:

输入:
image = [[1,1,1],[1,1,0],[1,0,1]]
sr = 1, sc = 1, newColor = 2
输出: [[2,2,2],[2,2,0],[2,0,1]]
解释:
初始坐标点位于图像的正中间,坐标 (sr,sc)=(1,1) 。
初始坐标点周围区域上所有符合条件的像素点的颜色都被更改成 2 。
注意,右下角的像素没有更改为 2 ,因为它不属于初始坐标点的周围区域。

提示:

  • imageimage[0] 的长度均在范围 [1, 50] 内。
  • 初始坐标点 (sr,sc) 满足 0 <= sr < image.length0 <= sc < image[0].length
  • image[i][j]newColor 表示的颜色值在范围 [0, 65535] 内。

  点击此处跳转题目。

二、C# 题解

  也是比较简单的题目,直接上代码了:

public class Solution {public int[][] FloodFill(int[][] image, int sr, int sc, int newColor) {if (image[sr][sc] == newColor) return image;Partition(image, sr, sc, image[sr][sc], newColor);return image;}public void Partition(int[][] image, int i, int j, int oldColor, int newColor) {if (i < 0 || j < 0 || i >= image.Length || j >= image[0].Length) return;if (image[i][j] != oldColor) return;image[i][j] = newColor;Partition(image, i, j + 1, oldColor, newColor);Partition(image, i, j - 1, oldColor, newColor);Partition(image, i + 1, j, oldColor, newColor);Partition(image, i - 1, j, oldColor, newColor);}
}
  • 时间:140 ms,击败 66.67% 使用 C# 的用户
  • 内存:43.64 MB,击败 100.00% 使用 C# 的用户
http://www.lryc.cn/news/189359.html

相关文章:

  • 内排序算法
  • options.html 页面设计成聊天框,左侧是功能列表,右侧是根据左侧的功能切换成不同的内容。--chatGpt
  • 排序算法-选择排序法(SelectionSort)
  • Java-集合框架
  • 联想携中国移动打造车路协同方案 助力重庆实现32类车联网场景
  • Rust入门基础
  • 民族民俗景区3d智慧旅游系统提升游客旅游体验和质量
  • Webpack 解决:Error: error:0308010C:digital envelope routines::unsupported 的问题
  • JAVA操作Json的ObjectMapper类
  • Docker--harbor
  • Flink中的时间和窗口
  • Ultra-Fast-Lane-Detection 车道线学习资料整理
  • 【Ubuntu】Ubuntu18.04终端卡顿问题
  • k8s强制删除pod、svc、namespace(Terminating)
  • froeach迭代删除和List迭代删除问题
  • chromedriver下载地址
  • 2ED2410-EM:12v / 24v智能模拟高侧MOSFET栅极驱动器
  • 什么是Fetch API?与传统的AJAX相比,有什么优势?
  • 43.241.18.123哪些问题会导致服务器里面时间错误
  • 【ElasticSearch】更新es索引生命周期策略,策略何时对索引生效
  • 卫星/RedCap/高算力/解决方案/创新金奖……移远通信为IOTE 2023再添新活力
  • N9030B是德科技信号分析仪
  • Mysql索引原理
  • apifox的使用以及和idea集成
  • css:过渡transition 、转换transform、动画animation
  • 双边滤波算法及例程
  • 排序算法-希尔排序法(ShellSort)
  • 交通物流模型 | 基于自适应图卷积网络的轨道交通短时客流预测
  • 2.1python 常用的三种数据类型_python量化实用版教程(初级)
  • C++游戏后端开发(魔兽世界,MMO,TrinityCore源码拆解) 教程