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

网站添加设置着陆页全国网站设计排名

网站添加设置着陆页,全国网站设计排名,查企业免费,网络服务商在哪咨询队列这个数据结构在很多场景下都有使用,比如在实现二叉树的层序遍历,floodfill问题(等等未完成)中,都需要借助队列的先进先出特性,下面给出这几个问题的解法 经典的二叉树的层序遍历 算法图示,以下图所示的二叉树为例…

队列这个数据结构在很多场景下都有使用,比如在实现二叉树的层序遍历,floodfill问题(等等未完成)中,都需要借助队列的先进先出特性,下面给出这几个问题的解法

经典的二叉树的层序遍历

算法图示,以下图所示的二叉树为例

二叉树层序遍历 C++代码实现

typedef struct binaryTreeNode {struct binaryTreeNode* left;struct binaryTreeNode* right;BTDataType data;
}BTNode;void levelOrder(BTNode* root)
{std::queue<BTNode*> nodeQ;if (root){nodeQ.push(root);}while (!nodeQ.empty()){BTNode* front = nodeQ.front();std::cout << front->data;if (front->left){nodeQ.push(front->left);}if (front->right){nodeQ.push(front->right);}nodeQ.pop();}
}

 注意:队列中存放的是二叉树中结点的指针,每次都去找队列的头部元素,通过头部元素找到其非空的左右孩子,并把头部元素出队列,此时出队列得到的序列就是二叉树的层序遍历序列

Floodfill问题之腐烂的苹果

(牛客网链接:腐烂的苹果_牛客题霸_牛客网 (nowcoder.com))

Flood Fill(泛洪填充)算法是一种图像处理的基本算法,用于填充连通区域。该算法通常从一个种子点开始,沿着种子点的相邻像素进行填充,直到遇到边界或者其他指定的条件为止。

如果用BFS的思想来解决这个问题,每次循环都只考虑队列中头元素的上下左右

需要考虑的有:

        1. 查看上下左右元素时不能发生越界

        2. 只将上下左右元素中为 1 的那些元素的二维坐标位置放到队列中

        3. 放到队列中的二维坐标位置设置为 true

           

代码实现 

int rotApple(vector<vector<int> >& grid) {int upanddown[4] = {0, 0, -1, 1};int leftandright[4] = {-1, 1, 0, 0};bool vis[1010][1010] = {false};int n = grid.size();int m = grid[0].size();queue<pair<int, int>> findtwoq;for (int i = 0; i < n; i++) {for (int j = 0; j < m; j++) {if (grid[i][j] == 2) {findtwoq.push({i, j});}}}int ret = 0;while (findtwoq.size()) {int sz = findtwoq.size();ret++;while (sz--) {auto [a, b] = findtwoq.front();findtwoq.pop();for (int i = 0; i < 4; i++) {int x = a + upanddown[i], y = b + leftandright[i];if (x >= 0 && x < n && y >= 0 && y < m && grid[x][y] == 1 && !vis[x][y]){vis[x][y] = true;findtwoq.push({x, y});}}}}for(int i = 0; i < n; i++) {for (int j = 0; j < m; j++) {if (grid[i][j] == 1 && vis[i][j] == false) {return -1;}}}return ret - 1;
}


文章转载自:

http://m5hSPzEA.srrrz.cn
http://aYYYjzsM.srrrz.cn
http://UhtHUJ5g.srrrz.cn
http://TG7dxlox.srrrz.cn
http://w0vGlvaR.srrrz.cn
http://bmdOxJnt.srrrz.cn
http://A7LcVmFh.srrrz.cn
http://bTn4za3m.srrrz.cn
http://1n4OjaFz.srrrz.cn
http://VahFLFZj.srrrz.cn
http://yWDFzW3B.srrrz.cn
http://BDUb3wbw.srrrz.cn
http://QTTwo4T8.srrrz.cn
http://EtRVFNVC.srrrz.cn
http://XPnicr1H.srrrz.cn
http://m27beFBC.srrrz.cn
http://qZ9c2IzX.srrrz.cn
http://NK3S4Y8S.srrrz.cn
http://iOqfEkzd.srrrz.cn
http://JAJ14evR.srrrz.cn
http://EqLFTmvn.srrrz.cn
http://1nCyUNAD.srrrz.cn
http://CJOwFnoh.srrrz.cn
http://1SZ3lsE1.srrrz.cn
http://e0SrZD0O.srrrz.cn
http://6RgDHBxT.srrrz.cn
http://OtAXIuXy.srrrz.cn
http://Sl7Q0Opc.srrrz.cn
http://frj6eb3M.srrrz.cn
http://M6oZwsBA.srrrz.cn
http://www.dtcms.com/wzjs/755586.html

相关文章:

  • 哪个网站财经做的最好jsp做的网站可以用的
  • 凡科登陆网站手机版网站推广优化趋势
  • 开发区经济建设网站网站建设案例 杭州远大
  • 网站空间排名如何做好网站建设内容的策划书
  • 网站建设的趋势找企业案例的网站
  • 中国空间站搭建国际合作平台东莞技术支持 骏域网站建设
  • 怎么做算命网站欧美模板网站建设
  • 制作一个网站平台要多钱哈尔滨网站设计多少钱
  • 做少儿培训网站的公司怎样创建自己的公众号
  • 专业团队高端网站制作门户网站优化方案
  • .网站排版如何查询网站死链
  • h5免费制作网站天津建设工程评标专家网站
  • 网站导航广告怎么做做网站要花钱吗
  • 优秀网站设计的标准WordPress经济主题
  • 域名会影响网站排名吗网站正能量大全
  • html5 素材网站2008 做网站
  • 做国际贸易网站要什么条件传奇手游网站
  • 泸州工投建设集团网站三网合一网站系统
  • 广州企业网站建设广东新闻联播回放
  • 网站首页面网站策划书1000字
  • 虚拟主机网站建设过程自建房设计图软件app
  • 合肥关键词网站排名wordpress公众号文章
  • 昆明云南微网站制作百度一下的网址
  • j2ee大型网站开发框架如何建设自己的网站 知乎
  • 旅游网站开发研究背景企业怎么做网站建设
  • 郑州做网站公司+卓美wordpress安装界面默认英文
  • 南通市网站建设建设网站要买服务器
  • 网站管理系统软件轻奢风格装修图片
  • 建立网站的主要步骤三门峡网站网站建设
  • 八卦岭网站建设商城网站建设的注意事项