📜  微软面试经历|第 51 组(SDE 实习生)(1)

📅  最后修改于: 2023-12-03 15:25:38.643000             🧑  作者: Mango

微软面试经历|第 51 组(SDE 实习生)

概述

本篇介绍的是我在微软的 SDE 实习生面试经历。我能够参加这次面试是通过内推才得到的机会。这次面试考察的是我在算法和编码实现方面的能力。

面试内容
第一轮

第一轮面试主要考察了我在数据结构和算法方面的基础知识。面试官首先询问了我对几种常用数据结构(如数组、链表、树等)的理解,并让我手写了一个链表反转的函数。

接下来面试官出了一道 LeetCode 上的原题,让我写一个函数,判断给定的一个字符串是否是合法的数独数据。我采用了哈希表的方法进行了实现。

最后,面试官给我出了一道算法题,要求我实现一个函数,将两个排过序的数组合并成一个,并确保合并后的数组依旧是有序的。我使用了双指针法进行了实现。

第二轮

第二轮面试主要考察了我的编码能力和工程实践经验。面试官先给我分配了一个小任务,在规定时间内写出一个程序,实现对一个文本文件中所有单词的出现次数进行计数,并输出结果。同时,面试官还问了我一些与程序质量、可维护性等相关的问题。

接下来,面试官让我手写了一个字符串匹配的算法,并要求我对代码进行优化,减少程序的时间复杂度。我对时间复杂度进行了一定的思考,并采用了KMP算法对代码进行了优化。

第三轮

第三轮面试主要考察了我的计算机系统架构、网络、操作系统等相关的知识。面试官首先问了我几个关于计算机系统、网络传输等方面的基础知识问题,并要求我手写一个多线程程序,实现并发处理从网络传输而来的多个任务。

随后,面试官询问了我在 Linux 操作系统方面的使用经验,并出了一道题目,要求我手写一个小程序,实现对 Linux 下文件进行压缩和解压缩。

总结

在本次面试中,我深刻地了解到了自己在算法、编程、计算机系统等方面的不足之处。通过这次面试,我学到了许多新的知识和实用技巧,也更加明确了自己未来的方向和目标。

返回格式:markdown

# 微软面试经历|第 51 组(SDE 实习生)

## 概述

本篇介绍的是我在微软的 SDE 实习生面试经历。我能够参加这次面试是通过内推才得到的机会。这次面试考察的是我在算法和编码实现方面的能力。

## 面试内容

### 第一轮

第一轮面试主要考察了我在数据结构和算法方面的基础知识。面试官首先询问了我对几种常用数据结构(如数组、链表、树等)的理解,并让我手写了一个链表反转的函数。

接下来面试官出了一道 LeetCode 上的原题,让我写一个函数,判断给定的一个字符串是否是合法的数独数据。我采用了哈希表的方法进行了实现。

最后,面试官给我出了一道算法题,要求我实现一个函数,将两个排过序的数组合并成一个,并确保合并后的数组依旧是有序的。我使用了双指针法进行了实现。

### 第二轮

第二轮面试主要考察了我的编码能力和工程实践经验。面试官先给我分配了一个小任务,在规定时间内写出一个程序,实现对一个文本文件中所有单词的出现次数进行计数,并输出结果。同时,面试官还问了我一些与程序质量、可维护性等相关的问题。

接下来,面试官让我手写了一个字符串匹配的算法,并要求我对代码进行优化,减少程序的时间复杂度。我对时间复杂度进行了一定的思考,并采用了KMP算法对代码进行了优化。

### 第三轮

第三轮面试主要考察了我的计算机系统架构、网络、操作系统等相关的知识。面试官首先问了我几个关于计算机系统、网络传输等方面的基础知识问题,并要求我手写一个多线程程序,实现并发处理从网络传输而来的多个任务。

随后,面试官询问了我在 Linux 操作系统方面的使用经验,并出了一道题目,要求我手写一个小程序,实现对 Linux 下文件进行压缩和解压缩。

## 总结

在本次面试中,我深刻地了解到了自己在算法、编程、计算机系统等方面的不足之处。通过这次面试,我学到了许多新的知识和实用技巧,也更加明确了自己未来的方向和目标。