Структуры данных Flashcards

1
Q

Array(Массив)

A

int[] scores = new int[3];
int[] numbers = new int[] {12, 20 , 32 ,47, 55};
scores[1] = 500;
Arrays.sort()
Arrays.copy()
Arrays.binarySearch()
Arrays.equals()
+ быстрый доступ к элементу по индексу
- фиксированный размер
- медленный поиск при большом количестве элементов

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

ArrayList

A

ArrayList<Integer> numbers = new ArrayList<>();
numbers.add(1)
ArrayList.remove()
\+ динамический размер
\+ быстрый доступ к элементу по индексу
- медленный поиск
- медленные вставка и удаление при переполнении массива</Integer>

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

LinkedList

A

LinkedList<String>colors = new LinkedList<>();
colors.add(”red”);
colors.remove(1);
LinkedList.contains(”red”)
LinkedList.get(2)
\+ динамический размер
\+ быстрая вставка/удаление в середину списка
- операции модификации в середине списка требуют дополнительного обхода, так как храним ссылку только на первый и последний элементы
- Проигрывает ArrayList по многим параметрам, но рекомендован если идет активная работа внутри листа</String>

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

Set

A

В сет присутствуют только уникальные элементы благодаря реализации на Map, где в ключе наше значение, а в значении new Object()
HashSet - порядок не гарантирован
LinkedHashSet - порядок гарантирован(двусторонние связи)
TreeSet - элементы отсортированы(дерево)

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

Map

A

Хранит данные ключ- значение
HashMap
LinkedHashMap
TreeMap

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

HashMap

A

HashMap<String, Integer> mountains = new Hashmap<>();
Map<String, String> countriesCapitals = new Hashmap<>();
mountains.put(”Goverla”, 2142)
Порядок не гарантирован

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

LinkedHashMap

A

LinkedHashMap<String, Integer> mountains = new LinkedHashmap<>();
Map<String, String> countriesCapitals = new LinkedHashmap<>();
mountains.put(”Goverla”, 2142)
Запоминает порядок благодаря двунаправленным связям, но занимает больше месте чем HashMap

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

TreeMap

A

Map<String, Integer> digits = TreeMap<>();

digits.put(”Один”, 1)

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