如何进行python中二叉树的级别顺序遍历分析
发表于:2025-01-31 作者:千家信息网编辑
千家信息网最后更新 2025年01月31日,今天就跟大家聊聊有关如何进行python中二叉树的级别顺序遍历分析,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。二叉树级顺序遍历给定二叉树,返
千家信息网最后更新 2025年01月31日如何进行python中二叉树的级别顺序遍历分析
今天就跟大家聊聊有关如何进行python中二叉树的级别顺序遍历分析,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
二叉树级顺序遍历
给定二叉树,返回其节点值的级别顺序遍历。(即,从左到右,逐级)。
例如:
Given binary tree [3,9,20,null,null,15,7]
,
3 / \ 9 20 / \ 15 7
return its level order traversal as:
[ [3], [9,20], [15,7]]
解题思路:
采用双队列来处理。
用当前队列current来处理本层的所有节点,将本层信息记录在vector中。用next来记录下一层的节点信息。
当前队列处理后,将本层信息的vector存储到结果vector中。清空存储本层信息的vector。将current和next交换。然后重新处理current队列。
代码如下:
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public: vector> levelOrder(TreeNode* root) { vector > result; queue current,next; vector level; if(NULL == root) return result; current.push(root); while(current.size() > 0) { while(current.size() > 0) { TreeNode *p = current.front(); current.pop(); level.push_back(p->val); if(p->left) next.push(p->left); if(p->right) next.push(p->right); } result.push_back(level); level.clear(); current.swap(next); } return result; }};
看完上述内容,你们对如何进行python中二叉树的级别顺序遍历分析有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。
顺序
信息
队列
处理
级别
内容
节点
分析
存储
代码
思路
更多
知识
篇文章
结果
行业
资讯
资讯频道
逐级
频道
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
怎么删除访问服务器账户
网络安全a类是什么
阿里云服务器建站宝盒
国外网络安全局
网络安全知识课程评价
韩服dnf登录正在检查服务器
手机远程网络服务器
软件开发相关岗位发展方向
盐城电商app软件开发
绝地求生国际版怎么切换服务器
高级软件开发工程师好学吗
网络安全项目分期建设方案
工厂网络安全部门名称
网络安全课题有哪些
zabbix数据库表
数据库语音端口
2020网络安全比赛
十大网络安全趋势
单台服务器能够对几十万
自考软件开发工具课后题答案
gis独立软件开发
内存数据库 应用
sftp目标服务器没权限
手机如何解除连接服务器
山东省网络安全技术专业
贵州oa软件开发
数据库多表查询格式
甘肃省养老金数据库
2021 软件开发调薪
数据库密码加密有什么方法