|
|
Опубліковано 08.01.2019 09:17:25
|
|
|

Цьогорічний пошук роботи майже завершено, насправді співбесіди не було місяць чи два, я думав про це або записував наступні компанії, пам'ятаю лише ті, які пам'ятаю. Моя посада — інженер з досліджень і розробок у Java, тому вона включає всі знання в цій сфері.
Стажування
1. Morgan Stanley
Перше інтерв'ю було з Морганом... Інтерв'юер дуже привітний, і основні питання ставляться: (1) Представити проєкт і розповісти про ту частину, яку ти зробив (після вступу я зрозумів, що те, що я зробив, було занадто низьким, і мені ще треба підготуватися) (2) Поліморфізм. У C++ — віртуальні функції, переписування віртуальних функцій у похідних класах, як мені зрозуміти під час виконання, в якому підкласі я працюю. (3) Які колекції найчастіше використовуються в Java? В: Список, включно з ArrayList і LinkedList. ArrayList реалізований внутрішньо масивами, які можуть змінювати довжину. LinkedList — це реалізація зв'язаного списку і не може змінюватися за довжиною. Питання: Ви маєте на увазі, що зазвичай визначаєте довжину LinkedList, скажімо, 10, а потім перевищуєте її? Відповідь: Ні, не обов'язково вказувати довжину LinkedList, якщо він не визначений, то саме машина має визначати, скільки місця зможе відкрити у вашому LinkedList. Я просто додаю дані настільки, наскільки потрібно. Питання: Якщо операцій додавання дуже багато, з якими проблемами ви зіткнетеся? Неможливо додати необмежений простір для вас Відповідь: Так... Отже, існує певний діапазон, я вважаю, що він має визначатися машиною, скільки простору може мати максимальний LinkedList, 32-бітні та 64-бітні машини мають відрізнятися (Менг, насправді я не знаю) Питання: Чи є ще якісь колекції, якими ви регулярно користуєтеся? Відповідь: Встановити, переважно HashSet, TreeSet, LinkedHashSet, а потім пояснити відмінності між цими трьома Питання: Аналізуйте складність HashSets і TreeSet, вставок, пошуків тощо. Відповідь: HashSet має бути пов'язаний зі своїм хешем, якщо це просто звичайний хеш-код, це може спричинити багато конфліктів, тому зв'язаний список буде довшим, і повільніше проходити пов'язаний список під час пошуку, але ви використовуєте методи оптимізації для розв'язання конфліктів, наприклад, вторинного виявлення чи чогось подібного, щоб зменшити конфлікти, це має бути швидшим, червоне і чорне дерево використовується всередині TreeSet, порядок пошуку та вставки має бути O(log(N))... Тоді ще одне питання... Я більше нічого не питав.
|
|