- 1
- 0
- 约6.9千字
- 约 18页
- 2025-12-19 发布于福建
- 举报
第PAGE页共NUMPAGES页
微软软件工程师面试题及备考指南
一、编程题(共5题,每题20分)
1.题目(20分):
编写一个函数,实现二叉树的层序遍历(广度优先遍历)。输入为二叉树的根节点,输出为一个列表,列表中的每个元素为对应层的节点值(从左到右)。假设二叉树节点定义如下:
python
classTreeNode:
def__init__(self,val=0,left=None,right=None):
self.val=val
self.left=left
self.right=right
答案与解析:
python
fromcollectionsimportdeque
classTreeNode:
def__init__(self,val=0,left=None,right=None):
self.val=val
self.left=left
self.right=right
deflevelOrder(root:TreeNode):
ifnotroot:
return[]
result=[]
queue=deque([root])#使用双端队列实现队列操作
whilequeue:
level_size=len(queue)
current_level=[]
for
原创力文档

文档评论(0)