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

网上做网页网站任务赚钱查淘宝关键词排名软件有哪些

网上做网页网站任务赚钱,查淘宝关键词排名软件有哪些,湘潭电大网站,最近几年做电影网站怎么样修改一下深度优先算法和广度优先算法,标出每一个节点相对于遍历起始位置的层级,遍历起始起点为第一层,和第一层相连的节点为第二层,以此类推 定义一个新的结构 struct NodeWithLevel {TreeNode* node;int level;NodeWithLevel(T…

修改一下深度优先算法和广度优先算法,标出每一个节点相对于遍历起始位置的层级,遍历起始起点为第一层,和第一层相连的节点为第二层,以此类推

定义一个新的结构

struct NodeWithLevel {TreeNode* node;int level;NodeWithLevel(TreeNode* n, int l) : node(n), level(l) {}
};

深度优先搜索(DFS)

class Solution {
public:vector<NodeWithLevel> dfsWithLevel(TreeNode* root) {vector<NodeWithLevel> result;dfsHelper(root, 1, result);return result;}private:void dfsHelper(TreeNode* node, int level, vector<NodeWithLevel>& result) {if (node == nullptr) {return;}// 将当前节点及其层级添加到结果中result.push_back(NodeWithLevel(node, level));// 递归处理左子树,层级加1dfsHelper(node->left, level + 1, result);// 递归处理右子树,层级加1dfsHelper(node->right, level + 1, result);}
};

DFS算法的工作原理:

  1. 我们使用一个辅助函数 dfsHelper,它接受当前节点、当前层级和结果vector作为参数。
  2. 如果当前节点为空,我们直接返回。
  3. 我们将当前节点和其层级添加到结果中。
  4. 然后我们递归地处理左子树和右子树,每次递归时层级加1。

广度优先搜索(BFS): 

class Solution {
public:vector<NodeWithLevel> bfsWithLevel(TreeNode* root) {vector<NodeWithLevel> result;if (root == nullptr) {return result;}queue<NodeWithLevel> q;q.push(NodeWithLevel(root, 1));while (!q.empty()) {NodeWithLevel current = q.front();q.pop();// 将当前节点及其层级添加到结果中result.push_back(current);// 如果左子节点存在,将其加入队列,层级加1if (current.node->left) {q.push(NodeWithLevel(current.node->left, current.level + 1));}// 如果右子节点存在,将其加入队列,层级加1if (current.node->right) {q.push(NodeWithLevel(current.node->right, current.level + 1));}}return result;}
};

这个BFS算法的工作原理:

  1. 我们创建一个队列来存储 NodeWithLevel 对象。
  2. 我们从根节点开始,将其作为第一层加入队列。
  3. 当队列不为空时,我们取出队首元素,将其添加到结果中。
  4. 然后我们检查当前节点的左右子节点,如果存在,就将它们加入队列,层级为当前节点的层级加1。
  5. 重复这个过程直到队列为空。

这两种算法都会返回一个 vector<NodeWithLevel>,其中包含了树中所有节点及其对应的层级。DFS 通常会以前序遍历的顺序返回节点,而 BFS 会按照层序遍历的顺序返回节点。

http://www.hengruixuexiao.com/news/45845.html

相关文章:

  • wordpress 网站变慢优化大师优化项目有
  • 做网站职业咋样哪个平台可以免费打广告
  • 自己做网站兼职小程序开发公司
  • 能免费做网站网站及推广
  • 重庆网站建设找承越国际新闻最新消息今天 新闻
  • 佛山网站建设哪家好宣传推广方案怎么写
  • 网站备案注销申请书seo顾问是什么
  • 大连企业网站阿里云com域名注册
  • CP网站开发制作H5网络广告设计
  • 上海市门户网站seo排名培训
  • 网站建设收费标准新闻长沙网站seo报价
  • 开发网站公司收入热门网站排名
  • asp.net网站访问统计信息流广告有哪些投放平台
  • 用linux做网站关键词优化到首页怎么做到的
  • 前端开发做网站吗市场调研报告模板范文
  • 温州国资委网站建设seoul是什么品牌
  • 建筑人才网987中山网站seo优化
  • 百度推广自己做网站优化关键词规则
  • 京东当前网站做的营销活动北京网站建设专业公司
  • 网站设计学习机构手机怎么创建自己的网站平台
  • 购物网站 建设 费用广州优化营商环境条例
  • 十元精品店做网站小广告设计
  • 做国外房产的网站中国国家培训网靠谱吗
  • 四川城乡和建设厅网站抖音seo关键词优化
  • 设计网站技术seo关键词优化推广价格
  • 广西房地产网站建设培训总结
  • 邢台哪里有做网站的潍坊百度seo公司
  • 源码论坛有哪些seo诊断工具
  • 源代码站内优化包括哪些
  • 凡科做网站怎么样深圳推广网络