Введение в структуры данных и алгоритмы Интервью Вопросы и ответы

Структура данных - это способ определения, хранения и извлечения данных в структурном и систематическом формате. Структура данных содержит различные типы наборов данных. Различные типы данных доступны для различных типов приложений, а некоторые данные являются узкоспециализированными для конкретных задач. Алгоритм - это пошаговая процедура с набором инструкций, которая выполняется соответствующим образом для получения желаемого результата. В математике и информатике алгоритм обычно означает небольшую процедуру, которая решает повторяющуюся проблему.

Ниже приведены основные вопросы и ответы по интервью со структурами данных и алгоритмами 2018 года:

Если вы ищете работу, связанную со структурами данных и алгоритмами, вам необходимо подготовиться к вопросам интервью с структурами данных и алгоритмами 2018 года. Хотя каждое интервью отличается и объем работы также различен, мы можем помочь вам с ответами на самые распространенные вопросы и ответы на вопросы о структурах данных и алгоритмах, которые помогут вам сделать скачок и добиться успеха в интервью.

Эти главные вопросы разделены на две части:

Часть 1 - Структуры данных и алгоритмы. Вопросы для интервью (базовые)

Эта первая часть охватывает вопросы и ответы по основным структурам данных и алгоритмам.

1. Что такое структура данных?

Ответ:
Структура данных - это способ определения, хранения и извлечения данных структурным и систематическим способом. Структура данных может содержать элемент данных другого типа. Различные типы структур данных подходят для различных типов приложений, а некоторые являются высокоспециализированными для конкретных задач.

2. Какие доступны различные структуры данных?

Ответ:
Доступность структуры данных может варьироваться в зависимости от языков программирования. Обычно доступными структурами данных являются список, массивы, стек, очереди, граф, дерево и т. Д.

3. Что такое алгоритм?

Ответ:
Алгоритм представляет собой пошаговую процедуру, которая определяет набор инструкций, которые должны быть выполнены в определенном порядке, чтобы получить желаемый результат. Компьютерная программа может рассматриваться как сложный алгоритм. В математике и информатике алгоритм обычно означает небольшую процедуру, которая решает повторяющуюся проблему.

Давайте перейдем к следующим вопросам интервью по структурам данных и алгоритмам.

4. Отличить файловую структуру от структуры хранения.

Ответ:
На самом деле, ключевым отличием является область памяти, к которой осуществляется доступ. Когда речь идет о структуре, которая находится в основной памяти компьютерной системы, это называется структурой хранения. При работе со вспомогательной структурой мы называем ее файловой структурой.

5. Что такое связанный список?

Ответ:
Связанный список - это список элементов данных, связанных ссылками, то есть указателями или ссылками. Большинство современных языков программирования высокого уровня не предоставляют возможности прямого доступа к ячейке памяти, поэтому связанный список не поддерживается в них или недоступен в виде встроенных функций. В информатике связанный список - это линейный набор элементов данных, в котором линейный порядок не определяется их физическим размещением в памяти. Вместо этого каждый элемент указывает на следующий. Это структура данных, состоящая из группы узлов, которые вместе представляют последовательность.

6. Что такое стек?

Ответ:
В структуре данных стек является абстрактным типом данных (ADT), который используется для хранения и извлечения значений в методе Last In First Out. Стек - это память, выделенная как пустое место для потока выполнения.

7. Почему мы используем стеки?

Ответ:
Структура стека существенно ограничивает способ вставки, извлечения и удаления элементов: последний вставленный элемент в стеке - единственный, который можно извлечь или удалить. Стеки следуют методу LIFO, а добавление и извлечение элемента данных занимает всего Ο (n) времени. Стеки используются там, где нам нужен доступ к данным в обратном порядке их поступления. Стеки обычно используются при рекурсивных вызовах функций, разборе выражений, прохождении графиков по глубине и т. Д.

Часть 2 - Структуры данных и алгоритмы Вопросы для интервью (Advanced)

Давайте теперь посмотрим на расширенные вопросы интервью по структурам данных и алгоритмам.

8. Какие операции можно выполнять со стеками?

Ответ:
Следующие операции могут быть выполнены в стеке -
• push () - добавляет элемент в стек - вставка
• pop () - удаляет верхний элемент стека
• peek () - дает значение верхнего элемента, не удаляя его.
• isempty () - проверяет, является ли стек пустым - Null check
• isfull () - проверяет, заполнен ли стек - нет места

9. Что такое очередь в структуре данных?

Ответ:
Очередь представляет собой абстрактную структуру данных, чем-то похожую на стек. В отличие от стека, очередь открывается с обоих концов. Один конец всегда используется для вставки данных (постановка в очередь), а другой - для удаления данных (снятие очереди). Очередь следует методологии «первым пришел - первым обслужен», то есть элемент данных, сохраненный первым, будет доступен первым.

10. Что такое линейный поиск?

Ответ:
Линейный поиск пытается найти элемент в последовательно организованном типе данных. Эти последовательно расположенные элементы данных, известные как массив или список, доступны в увеличивающейся ячейке памяти. Линейный поиск сравнивает ожидаемый элемент данных с каждым из элементов данных в списке или массиве. Средняя сложность времени линейного поиска равна Ο (n), а сложность наихудшего случая равна Ο (n2). Данные в целевых массивах / списках не нужно сортировать.

Давайте перейдем к следующим вопросам интервью по структурам данных и алгоритмам.

11. Что такое бинарный поиск?

Ответ:
Бинарный поиск работает только по отсортированным спискам или массивам. Этот поиск выбирает середину, которая разбивает весь список на две части. Сначала сравнивается середина.
Этот поиск сначала сравнивает целевое значение с серединой списка. Если он не найден, то принимает решение о погоде. В компьютерных науках бинарный поиск, также известный как полуинтервальный поиск, логарифмический поиск или двоичная дробь, представляет собой алгоритм поиска, который находит положение целевого значения в отсортированном массиве.

12. Что такое график?

Ответ:
Граф представляет собой графическое представление набора объектов, где некоторые пары объектов связаны ссылками. Взаимосвязанные объекты представлены точками, называемыми вершинами, а связи, соединяющие вершины, называются ребрами. Структура данных графа состоит из конечного (и, возможно, изменяемого) набора вершин или узлов или точек вместе с набором неупорядоченных пар этих вершин для неориентированного графа или набора упорядоченных пар для ориентированного графа.

13. Что такое рекурсивная функция?

Ответ:
Рекурсивная функция - это функция, которая вызывает себя, напрямую или вызывает функцию, которая в свою очередь вызывает ее. Каждая рекурсивная функция следует рекурсивным свойствам - базовым критериям, где функции перестают вызывать себя, и прогрессивному подходу, в котором функции пытаются соответствовать базовым критериям в каждой итерации. Важным применением рекурсии в информатике является определение динамических структур данных, таких как списки и деревья.

14. Что такое Ханойская башня?

Ответ:
Ханойская башня - это математическая головоломка, которая состоит из трех башен (колышков) и более одного кольца. Все кольца имеют разные размеры и сложены друг на друга, где большой диск всегда находится ниже маленького диска. Цель состоит в том, чтобы переместить башню диска от одного колышка к другому, не нарушая его свойств. Цель этой игры - переместить диски один за другим от первого до последнего колышка. И есть только ОДНО условие, мы не можем поместить больший диск поверх меньшего.

15. Приведите несколько примеров жадных алгоритмов.

Ответ:
Приведенные ниже проблемы находят свое решение с использованием подхода жадных алгоритмов -
• Проблема коммивояжера
• Минимальный алгоритм связующего дерева Прима
• Алгоритм минимального связующего дерева Крускала
• Алгоритм минимального связующего дерева Дейкстры
• График - раскраска карты
• График - покрытие вершин
• Рюкзак Проблема
• Проблема планирования работы

Рекомендуемая статья

Это было руководство к списку вопросов и ответов для интервью со структурами данных и алгоритмами, чтобы кандидат мог легко разобраться в вопросах интервью со структурами данных и алгоритмами. Вы также можете посмотреть следующие статьи, чтобы узнать больше -

  1. 10 лучших структур данных и алгоритмов C ++ | основы
  2. Лучший выбор языков программирования для изучения алгоритмов
  3. Вопросы интервью SSRS - Как взломать 10 лучших вопросов
  4. Интервью по сетевой безопасности: самые популярные и популярные