微软软件工程师面试题及备考指南.docxVIP

  • 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)

1亿VIP精品文档

相关文档