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

做电影网站的流程如何在google上免费推广

做电影网站的流程,如何在google上免费推广,wordpress 新建分类页面,wordpress外链mp4一、什么是FloodFill算法 FloodFill算法字面意思就是洪水灌溉法,比如我们有这么一块地: 0表示平原,正数表示高地,负数表示凹地,那么当洪水来临时这些凹地会被优先灌满。而我们要找的正是这些联通块,如&…

一、什么是FloodFill算法

FloodFill算法字面意思就是洪水灌溉法,比如我们有这么一块地:

        0表示平原,正数表示高地,负数表示凹地,那么当洪水来临时这些凹地会被优先灌满。而我们要找的正是这些联通块,如: 

 

        它是一种暴力搜索的思想,只要我们把每个地方都搜索一遍,那么最终的结果必定会水落石出。 通常可以使用BFS、DFS或并查集解决。

BFS(广度优先搜索)——搜索算法_广度优先搜索bfs-CSDN博客

DFS+回溯+剪枝(深度优先搜索)——搜索算法-CSDN博客

接下来我们直接从题中感受。

二、试题一:岛屿数量

        我们可以使用两层for循环找到没有搜索过的“1”然后在从这个“1”开始进行BFS或DFS展开,在期间使用哈希表记录每个“1”是否已经搜索过。每一次新的展开之前做一下计数,最后得到最终答案。

BFS代码示例:

class Solution {
public:int n=0,m=0,ret=0;int dx[4]={0,0,-1,1},dy[4]={-1,1,0,0};int numIslands(vector<vector<char>>& grid){n=grid.size(),m=grid[0].size(); vector<vector<bool>> hash(n,vector<bool>(m));for(int i=0;i<n;i++)for(int j=0;j<m;j++)if(grid[i][j]=='1'&&!hash[i][j]) bfs(i,j,grid,hash);  return ret;}void bfs(int i,int j,vector<vector<char>>& grid,vector<vector<bool>>& hash){ret++;queue<pair<int,int>> q;hash[i][j]=true;q.push({i,j});while(!q.empty()){auto [a,b] = q.front();q.pop();for(int k=0;k<4;k++){int x=a+dx[k],y=b+dy[k];if(x>=0&&x<n&&y>=0&&y<m&&grid[x][y]=='1'&&!hash[x][y]){q.push({x,y});hash[x][y]=true;}}}}
};

 DFS代码示例:

class Solution {
public:int n=0,m=0,ret=0;int dx[4]={0,0,-1,1},dy[4]={-1,1,0,0};int numIslands(vector<vector<char>>& grid){n=grid.size(),m=grid[0].size();vector<vector<bool>> hash(n,vector<bool>(m));for(int i=0;i<n;i++)for(int j=0;j<m;j++)if(grid[i][j]=='1'&&!hash[i][j]){ret++;dfs(i,j,grid,hash);}return ret;}void dfs(int i,int j,vector<vector<char>>& grid,vector<vector<bool>>& hash){hash[i][j]=true;for(int k=0;k<4;k++){int x=i+dx[k],y=j+dy[k];if(x>=0&&x<n&&y>=0&&y<m&&grid[x][y]=='1'&&!hash[x][y])dfs(x,y,grid,hash);}}
};

三、试题二:太平洋大西洋水流问题 

        按题意,如果一个数能够与上边界和左边界元素联通,那么它就能流入“太平洋”,如果与右边界或下边界元素联通则流入“大西洋” 。

        如果我们一个元素一个元素的去搜索,去看它流入“太平洋”,还是“大西洋”,那么效率势必会很低。我们可以直接从边界扩展,能被上边界和左边界扩展到的是“太平洋”,能被下边界和右边界扩展到的是“大西洋”。所以需要使用一个哈希表记录两个状态(“大西洋,“太平洋”),可以使用一个pair<bool,bool>作为哈希表的元素类型。

DFS代码示例: 

class Solution {
public:vector<vector<pair<bool,bool>>> hash;int n=0,m=0;vector<vector<int>> pacificAtlantic(vector<vector<int>>& heights){n=heights.size(),m=heights[0].size();hash.resize(n);for(int i=0;i<n;i++) hash[i].resize(m,{false,false});for(int j=0;j<m;j++) dfs(0,j,heights,1),dfs(n-1,j,heights,2);for(int i=0;i<n;i++) dfs(i,0,heights,1),dfs(i,m-1,heights,2);vector<vector<int>> ret;for(int i=0;i<n;i++)for(int j=0;j<m;j++)if(hash[i][j].first&&hash[i][j].second) ret.push_back({i,j});return ret;}int dx[4]={0,0,1,-1},dy[4]={-1,1,0,0};void dfs(int i,int j,vector<vector<int>>& heights,int f){f==1?hash[i][j].first=true:hash[i][j].second=true;for(int k=0;k<4;k++){int x=dx[k]+i,y=dy[k]+j;if(x>=0&&x<n&&y>=0&&y<m&&heights[i][j]<=heights[x][y]){if(f==1&&hash[x][y].first) continue;if(f==2&&hash[x][y].second) continue;dfs(x,y,heights,f);}}}
};

BFS代码示例:

class Solution {
public:vector<vector<pair<bool,bool>>> hash;int n=0,m=0;vector<vector<int>> pacificAtlantic(vector<vector<int>>& heights){n=heights.size(),m=heights[0].size();hash.resize(n);for(int i=0;i<n;i++) hash[i].resize(m,{false,false});for(int j=0;j<m;j++) bfs(0,j,heights,1),bfs(n-1,j,heights,2);for(int i=0;i<n;i++) bfs(i,0,heights,1),bfs(i,m-1,heights,2);vector<vector<int>> ret;for(int i=0;i<n;i++)for(int j=0;j<m;j++)if(hash[i][j].first&&hash[i][j].second) ret.push_back({i,j});return ret;}int dx[4]={0,0,1,-1},dy[4]={-1,1,0,0};void bfs(int i,int j,vector<vector<int>>& heights,int f){f==1?hash[i][j].first=true:hash[i][j].second=true;queue<pair<int,int>> q;q.push({i,j});while(!q.empty()){auto [a,b] = q.front();q.pop();for(int k=0;k<4;k++){int x=a+dx[k],y=b+dy[k];if(x>=0&&x<n&&y>=0&&y<m&&heights[a][b]<=heights[x][y]){if(f==1&&hash[x][y].first) continue;if(f==2&&hash[x][y].second) continue;f==1?hash[x][y].first=true:hash[x][y].second=true;q.push({x,y});}}}}
};

http://www.hkea.cn/news/533248/

相关文章:

  • wordpress 发帖机镇江抖音seo
  • 网站建设的小结可以发外链的论坛有哪些
  • 网站正常打开速度网店营销与推广策划方案
  • 义乌 网站制作进入百度app
  • 做外围网站赌球红树林seo基础入门免费教程
  • 绿色风格网站seo排名赚钱
  • 南宁企业免费建站百度推广营销怎么做
  • 建立个人网站的成本短视频seo营销系统
  • 深圳公司名称大全网站结构优化的内容和方法
  • 安康市代驾公司上海网站关键词排名优化报价
  • 怎么在网站上建设投票统计在线培训系统app
  • 泰州网站建设哪家好网站seo的主要优化内容
  • 洛卡博网站谁做的seo权重查询
  • 东莞网络科技公司有哪些山东网站seo
  • 网站建设需要学什么网站模板购买
  • 用html做的游戏网站关键词推广效果分析
  • 做影视网站引流正规推广平台有哪些
  • 免费下载简历模板北京seo排名厂家
  • 西昌市做网站的百度搜索排名靠前
  • 办公室装修实景拍摄图重庆seo俱乐部联系方式
  • 网站建设阶段推广计划书怎么写
  • 代做毕业设计网站现成注册网站平台
  • 电商网站开发工作计划企业网络营销策划
  • 用wps网站栏目做树形结构图网页设计代码案例
  • 多媒体网站设计开发是指什么每日关键词搜索排行
  • 网站 seo正规网络公司关键词排名优化
  • 建立网站赚多少钱seo收录排名
  • 怎么做app网站seo学习网站
  • 广西建设职业技术学院官网免费的seo优化
  • 凡科网电脑版怎么做网站百度知道官网手机版