- 5
- 0
- 约5.77千字
- 约 18页
- 2026-02-27 发布于福建
- 举报
第PAGE页共NUMPAGES页
2026年微软件工程师面试问题集
一、编程基础题(共5题,每题10分,总分50分)
题目1(10分)
编写一个函数,实现二叉树的深度优先遍历(前序遍历)。要求使用递归和非递归两种方法实现。
答案与解析:
python
递归方法
defpreorder_recursive(root):
ifnotroot:
return[]
result=[]
result.append(root.val)
result.extend(preorder_recursive(root.left))
result.extend(preorder_recursive(root.right))
returnresult
非递归方法
defpreorder_iterative(root):
ifnotroot:
return[]
stack,result=[root],[]
whilestack:
node=stack.pop()
result.append(node.val)
ifnode.right:
stack.append(node.right)
ifnode.left:
stack.append(node.left)
returnresult
解析:前序遍历遵循根-左-右的访问顺序。递归方法直接按照顺序访问节点
您可能关注的文档
- 2026年电信行业招聘信号工程师的面试题库与解析.docx
- 2026年保利发展安全岗位面试问题集.docx
- 外贸业务员岗位面试常见问题解答.docx
- 中粮集团企业规划师面试题库含答案.docx
- 轮胎测试专家选择和考核之我见.docx
- 2026年旅游行业导游员面试题库及答案参考.docx
- 2026年搜狗研发工程师面试题及答案.docx
- 医疗行业制裁合规操作指南与面试题.docx
- 2026年考试题集公路运输安全知识测试题.docx
- 电商专员面试题集.docx
- 人教版高中英语必修第二册UNIT 3 Part 2 Listening and Talking—Video Time课件.ppt
- 人教版高中英语必修第二册UNIT 3 Part 1 Listening and Speaking—Discovering Useful Structures课件.ppt
- 人教版高中英语必修第二册UNIT 4 Part 1 Listening and Speaking—Discovering Useful Structures课件.ppt
- 人教版高中英语必修第二册UNIT 4 Part 2 Listening and Talking—Video Time课件.ppt
- 人教版高中英语必修第二册UNIT 5 Part 2 Listening and Talking—Video Time课件.ppt
- 人教版高中英语必修第二册晨读晚诵课件.ppt
- 数字电子电路卡诺图法化简.pptx
- 2026栈和队列 学习课件.pptx
- 人教版高中英语必修第二册UNIT 4 课时作业(三)含答案.docx
- 人教版高中英语必修第二册UNIT 3 课时作业(一)含答案.docx
原创力文档

文档评论(0)