[Data Structure] > Basic (Часть 1) Flashcards

1
Q

что такое структуры данных?

A

Структуры данных это информация организованная определенным образом для более эффективного использования

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Назовите минимум 7 структур данных

A

Stack (Стэк)
Queue (Очередь)
Linked List
Set (Коллекция (значений))
Hash Table
Tree
Graph

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Опишите структуру данных как стэк (Stack)
+пример

A

Стэк это структура данных работающая по принципу LIFO (Last In First Out — последним вошел, первым вышел)

(пример)
как реализация вызовов функций в программировании (event loop), для реверса строковых значений ???

(методы)
push: добавить новый елемент
pop: вернуть последний ел. и удалить его
peek: вернуть последний ел.
length: вернуть количество ел.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Опишите структуру данных как очередь (Queue)
+пример

A

Очередь это структура данных работающая по принципу FIFO (First In First Out — первым вошел, первым вышел)

(методы)
enqueue: добавить элемент в конец
dequeue: удалить первый элемент и вернуть его
peek: получить первый элемент
isEmpty: проверить, пуста ли очередь
clear: удалить данные
size(length): получить количество элементов в очереди

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Опишите структуру данных как Linked List (связный список)
+ example
(optional) 8 основных методов

A

Связный список - это структура, где каждое значение содержит данных узла и указателя на следующий узел
пример: плейлист: данные о песни + сслыка наследующий трэк
методы:
size: вернуть количество узлов
head: вернуть первый элемент (head — голова)
add: добавить элемент в конец (tail — хвост)
remove: удалить несколько узлов
indexOf: вернуть индекс узла
elementAt: вернуть узел по индексу
addAt/removeAt: вставить/удалить узел в определенное место (по индексу)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Опишите структуру данных как Set (Коллекция (значений) или множество)
+example

A

Структура позволяющая хранить значения определённого типа без определённого порядка и без повторений.

(examples): к примеру составить два списка гостей и посмотреть общих людей, или для математических операций

(methods)
values: вернуть все элементы в коллекции
size: вернуть количество элементов
has: проверить, имеется ли элемент в коллекции
add: добавить элемент
remove: удалить элемент
union: вернуть область пересечения двух коллекций
difference: вернуть отличия двух коллекций
subset: проверить, является ли одна коллекция подмножеством другой

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Опишите структуру данных как Хеш Таблица (Hash Table)
+пример
+в каких структурах используется в java script?

A

Хеш Таблица это структура которая строится по принцепу ключ-значение,
имеет высокую скорость поиска

(example) используется в механизме кеширования так как запросы в БД довольно ресурсоемкие

(methods) основные, add/remove pair, search by key

(+js) она используется в таких структурах, как Map, Dictionary и Object.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Опишите структуру данных как граф (Graph)
+пример

A

Граф это структура реализующая коллекцию связанных между собой узлов

(пример)
для расчета лучшего маршрута в навигационных приложениях

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Опишите структуру данных как дерево (Tree)
+пример

A

Дерево это иерархическая структура данных состоящая из корневого узла и узлов которые от него расходятся

(пример)
организация структуры папок

How well did you know this?
1
Not at all
2
3
4
5
Perfectly