mirror of
https://github.moeyy.xyz/https://github.com/trekhleb/javascript-algorithms.git
synced 2024-11-10 11:09:43 +08:00
Update .eslintrc, improve UK translation for LinkedList (#1128)
* Add ignore patterns to eslint config * Improve UK translation for LinkedList --------- Co-authored-by: Oleksii Trekhleb <3000285+trekhleb@users.noreply.github.com>
This commit is contained in:
parent
d7a41a6461
commit
09afeb58d8
@ -12,6 +12,7 @@
|
|||||||
"arrow-body-style": "off",
|
"arrow-body-style": "off",
|
||||||
"no-loop-func": "off"
|
"no-loop-func": "off"
|
||||||
},
|
},
|
||||||
|
"ignorePatterns": ["*.md", "*.png", "*.jpeg", "*.jpg"],
|
||||||
"settings": {
|
"settings": {
|
||||||
"react": {
|
"react": {
|
||||||
"version": "18.2.0"
|
"version": "18.2.0"
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
# Зв'язаний список
|
# Зв'язаний список
|
||||||
|
|
||||||
Зв'язаний список — базова динамічна структура даних в інформатиці, що складається з вузлів, кожен з яких містить як дані, так посилання («зв'язку») на наступний вузол списку. Дана структура дозволяє ефективно додавати та видаляти елементи на довільній позиції у послідовності у процесі ітерації. Більш складні варіанти включають додаткові посилання, що дозволяють ефективно додавати та видаляти довільні елементи.
|
Зв'язаний список — базова динамічна структура даних в інформатиці, що складається з вузлів, кожен з яких містить як дані, так і посилання («зв'язку») на наступний вузол списку. Ця структура даних дозволяє ефективно додавати та видаляти елементи на довільній позиції у послідовності у процесі ітерації. Більш складні варіанти включають додаткові посилання, що дозволяють ефективно додавати та видаляти довільні елементи.
|
||||||
|
|
||||||
Принциповою перевагою перед масивом є структурна гнучкість: порядок елементів зв'язкового списку може збігатися з порядком розташування елементів даних у пам'яті комп'ютера, а порядок обходу списку завжди явно задається його внутрішніми зв'язками. Суть переваги у тому, що у багатьох мовах створення масиву вимагає вказати його заздалегідь. Зв'язковий список дозволяє обійти це обмеження.
|
Принциповою перевагою перед масивом є структурна гнучкість: порядок елементів зв'язаного списку може збігатися з порядком розташування елементів даних у пам'яті комп'ютера, а порядок обходу списку завжди явно задається його внутрішніми зв'язками. Це важливо, бо у багатьох мовах створення масиву вимагає вказати його розмір заздалегідь. Зв'язаний список дозволяє обійти це обмеження.
|
||||||
|
|
||||||
Недоліком зв'язкових списків є те, що час доступу є лінійним (і важко для реалізації конвеєрів). Неможливий швидкий доступ (випадковий).
|
Недоліком зв'язаних списків є те, що час доступу є лінійним (і важко для реалізації конвеєрів). Неможливий швидкий доступ (випадковий).
|
||||||
|
|
||||||
![Linked List](./images/linked-list.jpeg)
|
![Linked List](./images/linked-list.jpeg)
|
||||||
|
|
||||||
@ -17,7 +17,7 @@
|
|||||||
```text
|
```text
|
||||||
Add(value)
|
Add(value)
|
||||||
Pre: value - значення, що додається
|
Pre: value - значення, що додається
|
||||||
Post: value поміщено в кінець списку
|
Post: value додано в кінець списку
|
||||||
n ← node(value)
|
n ← node(value)
|
||||||
if head = ø
|
if head = ø
|
||||||
head ← n
|
head ← n
|
||||||
@ -32,7 +32,7 @@ end Add
|
|||||||
```text
|
```text
|
||||||
Prepend(value)
|
Prepend(value)
|
||||||
Pre: value - значення, що додається
|
Pre: value - значення, що додається
|
||||||
Post: value поміщено на початок списку
|
Post: value додано на початку списку
|
||||||
n ← node(value)
|
n ← node(value)
|
||||||
n.next ← head
|
n.next ← head
|
||||||
head ← n
|
head ← n
|
||||||
@ -42,7 +42,7 @@ Prepend(value)
|
|||||||
end Prepend
|
end Prepend
|
||||||
```
|
```
|
||||||
|
|
||||||
### Поиск
|
### Пошук
|
||||||
|
|
||||||
```text
|
```text
|
||||||
Contains(head, value)
|
Contains(head, value)
|
||||||
@ -60,7 +60,7 @@ Contains(head, value)
|
|||||||
end Contains
|
end Contains
|
||||||
```
|
```
|
||||||
|
|
||||||
### Вилучення
|
### Видалення
|
||||||
|
|
||||||
```text
|
```text
|
||||||
Remove(head, value)
|
Remove(head, value)
|
||||||
@ -94,7 +94,7 @@ Remove(head, value)
|
|||||||
end Remove
|
end Remove
|
||||||
```
|
```
|
||||||
|
|
||||||
### Обход
|
### Обхід
|
||||||
|
|
||||||
```text
|
```text
|
||||||
Traverse(head)
|
Traverse(head)
|
||||||
@ -108,12 +108,12 @@ Traverse(head)
|
|||||||
end Traverse
|
end Traverse
|
||||||
```
|
```
|
||||||
|
|
||||||
### Зворотний обхід
|
### Зворотній обхід
|
||||||
|
|
||||||
```text
|
```text
|
||||||
ReverseTraversal(head, tail)
|
ReverseTraversal(head, tail)
|
||||||
Pre: head и tail відносяться до одного списку
|
Pre: head і tail відносяться до одного списку
|
||||||
Post: елементи списку пройдено у зворотному порядку
|
Post: елементи списку пройдено у зворотньому порядку
|
||||||
if tail != ø
|
if tail != ø
|
||||||
curr ← tail
|
curr ← tail
|
||||||
while curr != head
|
while curr != head
|
||||||
@ -131,7 +131,7 @@ end ReverseTraversal
|
|||||||
|
|
||||||
## Складність
|
## Складність
|
||||||
|
|
||||||
### Тимчасова складність
|
### Часова складність
|
||||||
|
|
||||||
| Читання | Пошук | Вставка | Вилучення |
|
| Читання | Пошук | Вставка | Вилучення |
|
||||||
| :--------: | :-------: | :--------: | :-------: |
|
| :--------: | :-------: | :--------: | :-------: |
|
||||||
@ -143,5 +143,5 @@ O(n)
|
|||||||
|
|
||||||
## Посилання
|
## Посилання
|
||||||
|
|
||||||
- [Wikipedia](https://uk.wikipedia.org/wiki/%D0%97%D0%B2%27%D1%8F%D0%B7%D0%B0%D0%BD%D0%B8%D0%B9_%D1%81%D0%BF%D0%B8%D1%81%D0%BE%D0%BA)
|
- [Wikipedia](https://uk.wikipedia.org/wiki/Зв'язаний_список)
|
||||||
- [YouTube](https://www.youtube.com/watch?v=6snsMa4E1Os)
|
- [YouTube](https://www.youtube.com/watch?v=6snsMa4E1Os)
|
||||||
|
Loading…
Reference in New Issue
Block a user