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

【C++算法】79.BFS解决FloodFill算法_图像渲染

文章目录

    • 题目链接:
    • 题目描述:
    • 解法
    • C++ 算法代码:


题目链接:

733. 图像渲染


题目描述:

11bd9d16c6313a4a8293c678e6b1927f


解法

BFS一层层剥开。


C++ 算法代码:

class Solution {// 定义坐标对的类型别名,表示(x,y)坐标typedef pair<int, int> PII;// 定义四个方向的偏移量:右、左、下、上int dx[4] = {0, 0, 1, -1};int dy[4] = {1, -1, 0, 0};public:vector<vector<int>> floodFill(vector<vector<int>>& image, int sr, int sc, int color) {// 记录初始位置的颜色int prev = image[sr][sc];// 如果初始颜色和目标颜色相同,直接返回原图if (prev == color)return image;// 获取图像的行数和列数int m = image.size(), n = image[0].size();// 创建队列用于BFSqueue<PII> q;// 将起始位置加入队列q.push({sr, sc});// 开始BFSwhile (!q.empty()) {// 取出队首元素auto [a, b] = q.front();// 将当前位置的颜色改为目标颜色image[a][b] = color;q.pop();// 遍历四个方向for (int i = 0; i < 4; i++) {// 计算新坐标int x = a + dx[i], y = b + dy[i];// 检查新坐标是否在图像范围内,并且颜色与初始颜色相同if (x >= 0 && x < m && y >= 0 && y < n && image[x][y] == prev) {// 将新坐标加入队列q.push({x, y});}}}// 返回处理后的图像return image;}
};
http://www.lryc.cn/news/604060.html

相关文章:

  • K8s集群两者不同的对外暴露服务的方式
  • 2025年JCR一区新算法-回旋镖气动椭圆优化算法Boomerang Aerodynamic Ellipse(BAE)-附Matlab免费代码
  • 小程序发票合并功能升级!发票夹直接选,操作更便捷
  • Python爬虫03_Requests破解百度翻译
  • 三步给小智ESP32S3智能语音硬件接入小程序打通MCP服务
  • ClickHouse MergeTree引擎:从核心架构到三级索引实战
  • 数字ic后端设计从入门到精通13(含fusion compiler, tcl教学)全定制版图设计
  • 通过双网口实现两台设备共享网络与文件传输
  • python线性回归:从原理到实战应用
  • 负载均衡、算法/策略
  • 【iOS】类扩展与关联对象
  • 深入解析RocksDB的MVCC和LSM Tree level
  • Vulnhub-NAPPING: 1.0.1靶机
  • 汉得班翎流程平台V1.20.0正式发布:AI智慧赋能,集成效率跃升!
  • ZKmall开源商城架构工具链:Docker、k8s 部署与管理技巧
  • 基于三台主机搭建 Web 服务环境:Nginx、NFS 与 DNS 配置全流程
  • 机械学习--线性回归---三个小案例
  • Kun_Tools(全能文档工具)V0.4.6 便携版
  • 2025年中科院与JCR期刊分区深度对比(第一期):TON中科院分区3区不变,JCR分区升至Q1;TOSEM重回中科院1区!
  • I2C 与 SMBus:同根同源,各有千秋
  • 学习Python中Selenium模块的基本用法(3:下载浏览器驱动续)
  • 美国股市高频tick级分时交易数据解码与订单簿及交易指令分析
  • 使用 Spring AI Alibaba MCP 结合 Nacos 实现企业级智能体应用
  • win10 环境删除文件提示文件被使用无法删除怎么办?
  • Aura_P41_PXX GameplayEffect
  • iOS仿写 —— 计算器
  • Python包架构设计与模式应用:构建可扩展的企业级组件
  • 车载诊断架构 --- 关于诊断时间参数P4的浅析
  • ABP VNext + GraphQL Federation:跨微服务联合 Schema 分层
  • 落霞归雁思维框架应用(十一) ——开发如何选语言与架构:把“技术洪流”修成顺势河道