Вопросы на собеседованиях в Microsoft 2
воскресенье, 2 мая 2010,
Александр Краковецкий
В первой части мы поговорили про общие вопросы, которые могут задать на собеседовании в Microsoft. Сегодня поговорим о вопросах на знание предметной области.
На собеседовании вам могут задать вопросы по основам компьютерных наук. Например, отличия между Java и С++ или что такое хэш-таблицы. Ниже перечислены вопросы, которые необходимо посмотреть перед собеседованием (удостоверьтесь, что вы знаете о том, как оценивать сложность алгоритмов и знаете некоторые операции со структурными данными):
Массивы
- определение
- бинарные деревья: определение, вставка, удаление, минимум, максимум, поиск, наследник, родитель
- от себя: чем массив отличается от ArrayList
Хэш-таблицы
- определение
- хэш-функция
- цепочное хэширование (chain hashing)
- open address hashing
Связанные списки
- определение
- однонаправленные списки: добавление вершины, удаление вершины, вставка, удаление, пересечение
- двунаправленные списки
- циклические списки
Очередь и стек
- определение
Алгоритмы сортировки
- быстрая сотрировка
- сортировка слияниями
- сортировка методом выбора с замещением
- сортировка вставками
Алгоритмы поиска
- линейный поиск
- бинарный поиск
ООП
- определение
- преимущества
- 4 принципа: наследование, полиморфизм, абстракция, инкапсуляция
Сравнение
- C++ vs. Java
- C++ vs. C
- массивы vs. списки
- хэш-таблицы vs. бинарные деревья
- сравнение видов памяти
Разное
- какая ваша любимая программа?
- как вы будете ее тестировать
- как бы вы ее улучшили?
Компании из статьи
Microsoft Украина | Украинское подразделение компании Microsoft. |