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

网站建设合同书范本wordpress有没有响应式

网站建设合同书范本,wordpress有没有响应式,十大全屋整装公司排名,做网站都需要学什么文章目录 **一、Floodfall 算法的概述****二、深度优先搜索#xff08;DFS#xff09;和广度优先搜索#xff08;BFS#xff09;在 Floodfall 算法中的应用****三、算法的基本原理****四、应用场景** 一、Floodfall 算法的概述 Floodfall 算法通常用于解决与区域填充、图的… 文章目录 **一、Floodfall 算法的概述****二、深度优先搜索DFS和广度优先搜索BFS在 Floodfall 算法中的应用****三、算法的基本原理****四、应用场景** 一、Floodfall 算法的概述 Floodfall 算法通常用于解决与区域填充、图的遍历等相关的问题。它的中文名字洪水灌溉顾名思义它的核心思想是从一个起始点开始像洪水一样蔓延直到满足特定的条件或覆盖整个目标区域。 Floodfall 算法在实现过程中常常会基于深度优先搜索DFS和广度优先搜索BFS的思想。 二、深度优先搜索DFS和广度优先搜索BFS在 Floodfall 算法中的应用 深度优先搜索DFS在 Floodfall 算法中会沿着一条路径尽可能深地探索下去直到无法继续然后回溯。这种方式在某些情况下能够快速找到较深的区域但可能会忽略一些较近但隐藏较深的区域。 例如在一个迷宫中如果使用 DFS 进行 Floodfall 式的探索可能会先深入一条复杂的长通道而错过一些就在入口附近但需要绕一点路才能到达的区域。 广度优先搜索BFS则是逐层地向外扩展先访问距离起始点近的节点再逐步扩展到更远的节点。在 Floodfall 算法中BFS 能确保先填充距离起始点较近的区域填充的顺序更加有序和可预测。 比如在地图填充中使用 BFS 进行 Floodfall 操作会先填充起始点周围的区域再逐渐向外扩散。 三、算法的基本原理 Floodfall 算法一般会使用某种数据结构如队列或栈来存储待处理的节点。从起始节点出发将其相邻的未访问节点加入数据结构然后依次处理这些节点不断扩展填充区域。 四、应用场景 图像处理中的颜色填充。游戏地图中的区域探索。 下面是一个使用 C实现的简单 Floodfall 算法示例代码用于填充二维矩阵中的一个区域分别展示了基于 DFS 和 BFS 的实现方式 #include iostream #include stack #include queue// 定义矩阵的大小 const int ROWS 10; const int COLS 10;// 方向数组用于遍历相邻节点 const int dx[] { -1, 1, 0, 0 }; const int dy[] { 0, 0, -1, 1 };// 定义一个结构体来表示节点 struct Node {int x;int y; };// 基于 DFS 的 FloodFill 函数 void floodFillDFS(int grid[ROWS][COLS], int startX, int startY, int targetColor, int newColor) {std::stackNode s;Node start;start.x startX;start.y startY;s.push(start);while (!s.empty()) {Node curr s.top();s.pop();int x curr.x;int y curr.y;// 如果当前节点的颜色与目标颜色不同跳过if (grid[x][y]! targetColor) {continue;}// 更改颜色grid[x][y] newColor;// 遍历相邻节点for (int i 0; i 4; i) {int newX x dx[i];int newY y dy[i];// 检查边界if (newX 0 newX ROWS newY 0 newY COLS) {Node next;next.x newX;next.y newY;s.push(next);}}} }// 基于 BFS 的 FloodFill 函数 void floodFillBFS(int grid[ROWS][COLS], int startX, int startY, int targetColor, int newColor) {std::queueNode q;Node start;start.x startX;start.y startY;q.push(start);while (!q.empty()) {Node curr q.front();q.pop();int x curr.x;int y curr.y;// 如果当前节点的颜色与目标颜色不同跳过if (grid[x][y]! targetColor) {continue;}// 更改颜色grid[x][y] newColor;// 遍历相邻节点for (int i 0; i 4; i) {int newX x dx[i];int newY y dy[i];// 检查边界if (newX 0 newX ROWS newY 0 newY COLS) {Node next;next.x newX;next.y newY;q.push(next);}}} }// 打印矩阵 void printGrid(int grid[ROWS][COLS]) {for (int i 0; i ROWS; i) {for (int j 0; j COLS; j) {std::cout grid[i][j] ;}std::cout std::endl;} }int main() {int grid[ROWS][COLS] {{0, 0, 0, 0, 0, 0, 0, 0, 0, 0},{0, 1, 1, 1, 1, 1, 1, 1, 1, 0},{0, 1, 0, 0, 0, 0, 0, 0, 1, 0},{0, 1, 0, 1, 1, 1, 1, 0, 1, 0},{0, 1, 0, 1, 0, 0, 1, 0, 1, 0},{0, 1, 0, 1, 0, 0, 1, 0, 1, 0},{0, 1, 0, 1, 1, 1, 1, 0, 1, 0},{0, 1, 0, 0, 0, 0, 0, 0, 1, 0},{0, 1, 1, 1, 1, 1, 1, 1, 1, 0},{0, 0, 0, 0, 0, 0, 0, 0, 0, 0}};std::cout 原始矩阵 std::endl;printGrid(grid);std::cout 基于 DFS 填充后的矩阵 std::endl;floodFillDFS(grid, 1, 1, 1, 2);printGrid(grid);std::cout 基于 BFS 填充后的矩阵 std::endl;floodFillBFS(grid, 1, 1, 2, 3);printGrid(grid);return 0; }在上述代码中我们分别实现了基于 DFS 和 BFS 的 Floodfall 算法用于填充二维矩阵中的指定区域。
http://www.w-s-a.com/news/784578/

相关文章:

  • 论坛网站搭建深圳网
  • 天津建立网站营销设计window7用jsp做的网站要什么工具
  • 英文网站wordpress所有图片
  • 我做的网站怎么打开很慢网络营销典型企业
  • 新增备案网站python3网站开发
  • 诊断网站seo现状的方法与通信工程专业做项目的网站
  • 南京 微网站 建站alexa排名查询统计
  • 天津网站建设企业系统wordpress已发布不显示不出来
  • 大连网站前端制作公司局域网视频网站建设
  • 张家界建设局网站电话wordpress网站怎么建
  • 淄博网站建设有实力装修培训机构哪家最好
  • 彩票网站建设seo优化师是什么
  • 怎么做英文网站网站建设基本费用
  • dede网站名称不能保存wordpress运费设置
  • 出口网站制作好一点的网站建设
  • 在小说网站做编辑怎么找韶关市建设局网站
  • 网站策划怎么做内容旅游型网站建设
  • 东莞百度网站推广ppt模板免费下载的网站
  • 网站建设项目管理基本要求网站空间到期影响
  • 做奖杯的企业网站谁有推荐的网址
  • wordpress能做企业站吗wordpress收发邮件
  • 电子产品网站建设策划方案腾讯企业邮箱注册申请免费
  • 哪些网站可以免费做代码自己电脑做网站服务器广域网访问
  • 高端网站设计青海省教育厅门户网站学籍查询
  • 长春网站优化公司网站制作400哪家好
  • 县级门户网站建设的报告开发游戏的软件有哪些
  • 做电子商务的网站wordpress带会员中心
  • 网站域名不变网站可以从做吗网站建设步骤 文档
  • 网站建设中 gif互联网新项目在哪里找
  • 做外包网站猎头公司英文