Jelajahi Sumber

Merge pull request #1480 from nongrata081/main

add ukrainian translation
John Washam 11 bulan lalu
induk
melakukan
40ef2500ed
1 mengubah file dengan 378 tambahan dan 355 penghapusan
  1. 378 355
      translations/README-uk.md

+ 378 - 355
translations/README-uk.md

@@ -1,16 +1,18 @@
 # Coding Interview University
 
-Original in [English](README.md)
+Оригінал [англійською](../README.md)
 
 > Спочатку я створив це як короткий список завдань для вивчення тем, щоб стати
-інженером-програмістом, але він збільшився до великого списку, який ви бачите
+інженером програмного забезпечення, але він збільшився до великого списку, який ви бачите
 сьогодні. Пройшовши цей навчальний план,
-[мене найняли розробником програмного забезпечення в Amazon](https://startupnextdoor.com/ive-been-acquired-by-amazon/?src=ciu)!
+[мене найняли розробником програмного забезпечення в Amazon](https://startupnextdoor.com/ive-been-acquired-by-amazon/?src=ciu)! Можливо, вам не доведеться вчитися так багато, як мені. У будь-якому випадку, все, що тобі потрібно, є тут.
 >
 > Я навчався приблизно 8-12 годин на день, протягом декількох місяців. Це моя
 історія:
 [Чому я навчався очно протягом 8 місяців для інтерв’ю в Google](https://medium.freecodecamp.org/why-i-studied-full-time-for-8-months-for-a-google-interview-cc662ce9bb13).
 >
+> **Зверніть Увагу:** вам не потрібно буде вчитися так багато, як мені. Я витратив багато часу на речі, які мені не потрібно було знати. Більше інформації про це нижче. Я допоможу вам досягти мети, не витрачаючи ваш дорогоцінний час.
+>
 > Перелічені тут ресурси добре підготують вас до технічної співбесіди практично
 в будь-якій компанії, включаючи гігантів: Amazon, Facebook, Google та
 Microsoft.
@@ -20,37 +22,38 @@ Microsoft.
 <details>
 <summary>Переклади:</summary>
 
-- [Bahasa Indonesia](translations/README-id.md)
-- [Bulgarian](translations/README-bg.md)
-- [Español](translations/README-es.md)
-- [German](translations/README-de.md)
-- [Japanese (日本語)](translations/README-ja.md)
-- [Polish](translations/README-pl.md)
-- [Português Brasileiro](translations/README-ptbr.md)
-- [Russian](translations/README-ru.md)
-- [Tiếng Việt - Vietnamese](translations/README-vi.md)
-- [Urdu - اردو](tanslations/README-ur.md)
-- [Uzbek](translations/README-uz.md)
-- [বাংলা - Bangla](translations/README-bn.md)
-- [ខ្មែរ - Khmer](translations/README-kh.md)
-- [简体中文](translations/README-cn.md)
-- [繁體中文](translations/README-tw.md)
+- [Бахаса Індонезія](translations/README-id.md)
+- [Болгарська](translations/README-bg.md)
+- [Іспанська](translations/README-es.md)
+- [Німецька](translations/README-de.md)
+- [Японська (日本語)](translations/README-ja.md)
+- [Маратхі](translations/README-mr.md)
+- [Польська](translations/README-pl.md)
+- [Бразильська португальська](translations/README-ptbr.md)
+- [Російська](translations/README-ru.md)
+- [Tiếng Việt - В'єтнамська](translations/README-vi.md)
+- [Урду - اردو](tanslations/README-ur.md)
+- [Узбецька](translations/README-uz.md)
+- [বাংলা - Бангла](translations/README-bn.md)
+- [ខ្មែរ - Кхмерська](translations/README-kh.md)
+- [简体中文 - Спрощена Китайська](translations/README-cn.md)
+- [繁體中文 - Традиційна Китайська](translations/README-tw.md)
 </details>
 
 <details>
 <summary>Переклади в процесі:</summary>
 
-- [Afrikaans](https://github.com/jwasham/coding-interview-university/issues/1164)
-- [Arabic](https://github.com/jwasham/coding-interview-university/issues/98)
-- [French](https://github.com/jwasham/coding-interview-university/issues/89)
-- [Greek](https://github.com/jwasham/coding-interview-university/issues/166)
-- [Italian](https://github.com/jwasham/coding-interview-university/issues/1030)
-- [Korean(한국어)](https://github.com/jwasham/coding-interview-university/issues/118)
-- [Malayalam](https://github.com/jwasham/coding-interview-university/issues/239)
-- [Persian - Farsi](https://github.com/jwasham/coding-interview-university/issues/186)
-- [Telugu](https://github.com/jwasham/coding-interview-university/issues/117)
-- [Thai](https://github.com/jwasham/coding-interview-university/issues/156)
-- [Turkish](https://github.com/jwasham/coding-interview-university/issues/90)
+- [Африка́анс](https://github.com/jwasham/coding-interview-university/issues/1164)
+- [Арабська](https://github.com/jwasham/coding-interview-university/issues/98)
+- [Французька](https://github.com/jwasham/coding-interview-university/issues/89)
+- [Грецька](https://github.com/jwasham/coding-interview-university/issues/166)
+- [Італійська](https://github.com/jwasham/coding-interview-university/issues/1030)
+- [Корейська (한국어)](https://github.com/jwasham/coding-interview-university/issues/118)
+- [Малайська](https://github.com/jwasham/coding-interview-university/issues/239)
+- [Перська - Farsi](https://github.com/jwasham/coding-interview-university/issues/186)
+- [Телугу](https://github.com/jwasham/coding-interview-university/issues/117)
+- [Тайська](https://github.com/jwasham/coding-interview-university/issues/156)
+- [Турецька](https://github.com/jwasham/coding-interview-university/issues/90)
 - [Українська](https://github.com/jwasham/coding-interview-university/issues/106)
 - [עברית](https://github.com/jwasham/coding-interview-university/issues/82)
 - [हिन्दी](https://github.com/jwasham/coding-interview-university/issues/81)
@@ -59,470 +62,490 @@ Microsoft.
 <div align="center">
 	<hr />
     <p>
-        <a href="https://github.com/sponsors/jwasham"><strong>Become a sponsor</strong> and support Coding Interview University!</a>
+        <a href="https://github.com/sponsors/jwasham"><strong>Станьте спонсором</strong> та підтримайте Coding Interview University!</a>
     </p>
     <hr />
 </div>
 
 ## Що це?
 
-Це мій багатомісячний план навчання для переходу від веб-розробника (самоука,
-без ступеня з комп'ютерних наук) до інженера програмного забезпечення для
-великої компанії.
-
 ![Програмування у дошки — з серіалу «Silicon Valley» HBO](https://d3j2pkmjtin6ou.cloudfront.net/coding-at-the-whiteboard-silicon-valley.png)
 
-Цей список призначено
-**для піонерів у сфері розробки програмного забезпечення** або
-тих, хто переходить від кодування/веб-розробки до більш архітектурних,
-інженерних рішень (де потрібні знання комп'ютерних наук). Якщо у вас
-багаторічний досвід і ви стверджуєте, що він таким є, очікуйте більш важкого
-інтерв’ю.
+Це мій багатомісячний план навчання, щоб стати інженером програмного забезпечення у великій компанії.
+
+**Необхідно:**
+* Невеликий досвід кодування (змінні, цикли, методи/функції тощо)
+* Терпіння
+* Час
 
-Також якщо у вас є багаторічний досвід кодування/веб-розробки, зверніть увагу,
-що великі компанії-розробники програмного забезпечення, такі як Google, Amazon,
-Facebook та Microsoft, відрізняють розробку програмного забезпечення
-від веб-розробки, і вони потребують знання комп'ютерних наук.
+Зверніть увагу, що це навчальний план з **інженерії програмного забезпечення**, не фронтенд-разробки чи фуллстек-розробки. Для цих кар'єрних шляхів існують дійсно чудові дорожні карти та курси із завданнями в інших місцях (дивись https://roadmap.sh/ для отримання додаткової інформації).
 
-Якщо ви хочете бути інженером з надійності або системним інженером, вчіть
-більше за опціональним списком (мережі, безпека).
+На університетській програмі з комп'ютерних наук можна багато чому навчитися, але для проходження співбесіди достатньо знати лише 75%, тож саме про це я розповідаю тут. Для повної програми самонавчання компʼютерним наукам, ресурси для мого навчального плану були включені в дорожню карту курса з комп'ютерних наук Камран Ахмеда: https://roadmap.sh/computer-science.
 
 ---
 
 ## Зміст
 
+### Навчальний план
+
 - [Що це?](#Що-це)
 - [Чому це використовувати?](#Чому-це-використовувати)
 - [Як це використовувати](#Як-це-використовувати)
 - [Не почувайтесь недостатньо розумними](#Не-почувайтесь-недостатньо-розумними)
-- [Про відео-ресурси](#about-video-resources)
-- [Interview Process & General Interview Prep](#interview-process--general-interview-prep)
-- [Pick One Language for the Interview](#pick-one-language-for-the-interview)
-- [Book List](#book-list)
-- [Before you Get Started](#before-you-get-started)
-- [What you Won't See Covered](#what-you-wont-see-covered)
-- [Prerequisite Knowledge](#prerequisite-knowledge)
-- [The Daily Plan](#the-daily-plan)
-- [Algorithmic complexity / Big-O / Asymptotic analysis](#algorithmic-complexity--big-o--asymptotic-analysis)
-- [Data Structures](#data-structures)
-    - [Arrays](#arrays)
-    - [Linked Lists](#linked-lists)
-    - [Stack](#stack)
-    - [Queue](#queue)
-    - [Hash table](#hash-table)
-- [More Knowledge](#more-knowledge)
-    - [Binary search](#binary-search)
-    - [Bitwise operations](#bitwise-operations)
-- [Trees](#trees)
-    - [Trees - Notes & Background](#trees---notes--background)
-    - [Binary search trees: BSTs](#binary-search-trees-bsts)
-    - [Heap / Priority Queue / Binary Heap](#heap--priority-queue--binary-heap)
-    - balanced search trees (general concept, not details)
-    - traversals: preorder, inorder, postorder, BFS, DFS
-- [Sorting](#sorting)
-    - selection
-    - insertion
-    - heapsort
-    - quicksort
-    - merge sort
-- [Graphs](#graphs)
-    - directed
-    - undirected
-    - adjacency matrix
-    - adjacency list
-    - traversals: BFS, DFS
-- [Even More Knowledge](#even-more-knowledge)
-    - [Recursion](#recursion)
-    - [Dynamic Programming](#dynamic-programming)
-    - [Object-Oriented Programming](#object-oriented-programming)
-    - [Design Patterns](#design-patterns)
-    - [Combinatorics (n choose k) & Probability](#combinatorics-n-choose-k--probability)
-    - [NP, NP-Complete and Approximation Algorithms](#np-np-complete-and-approximation-algorithms)
-    - [Caches](#caches)
-    - [Processes and Threads](#processes-and-threads)
-    - [Papers](#papers)
-    - [Testing](#testing)
-    - [Scheduling](#scheduling)
-    - [Implement system routines](#implement-system-routines)
-    - [String searching & manipulations](#string-searching--manipulations)
-    - [Tries](#tries)
-    - [Floating Point Numbers](#floating-point-numbers)
-    - [Unicode](#unicode)
-    - [Endianness](#endianness)
-- [Networking](#networking)
-- [System Design, Scalability, Data Handling](#system-design-scalability-data-handling) (if you have 4+ years experience)
-- [Final Review](#final-review)
-- [Coding Question Practice](#coding-question-practice)
-- [Coding exercises/challenges](#coding-exerciseschallenges)
-- [Once you're closer to the interview](#once-youre-closer-to-the-interview)
-- [Your Resume](#your-resume)
-- [Be thinking of for when the interview comes](#be-thinking-of-for-when-the-interview-comes)
-- [Have questions for the interviewer](#have-questions-for-the-interviewer)
-- [Once You've Got The Job](#once-youve-got-the-job)
-
----------------- Everything below this point is optional ----------------
-
-- [Additional Books](#additional-books)
-- [Additional Learning](#additional-learning)
-    - [Compilers](#compilers)
-    - [Emacs and vi(m)](#emacs-and-vim)
-    - [Unix command line tools](#unix-command-line-tools)
-    - [Information theory](#information-theory)
-    - [Parity & Hamming Code](#parity--hamming-code)
-    - [Entropy](#entropy)
-    - [Cryptography](#cryptography)
-    - [Compression](#compression)
-    - [Computer Security](#computer-security)
-    - [Garbage collection](#garbage-collection)
-    - [Parallel Programming](#parallel-programming)
-    - [Messaging, Serialization, and Queueing Systems](#messaging-serialization-and-queueing-systems)
+- [Про відео-ресурси](#Про-відеоресурси)
+- [Оберіть мову програмування](#Оберіть-мову-програмування)
+- [Книги про структури даних та алгоритми](#Книги-про-структури-даних-та-алгоритми)
+- [Книги з підготовки до співбесіди](#Книги-з-підготовки-до-співбесіди)
+- [Не робіть моїх помилок](#Не-робіть-моїх-помилок)
+- [Що не буде охоплено](#Що-не-буде-охоплено)
+- [Щоденний план](#Щоденний-план)
+- [Практика з питань кодування](#Практика-з-питань-кодування)
+- [Проблеми кодування](#Проблеми-кодування)
+
+### Теми для вивчення
+
+- [Складність алгоритмів / Big-O / Асимптотичний аналіз](#algorithmic-complexity--big-o--asymptotic-analysis)
+- [Структури даних](#data-structures)
+    - [Масив](#arrays)
+    - [Зв'язаний список](#linked-lists)
+    - [Стек](#stack)
+    - [Черга](#queue)
+    - [Геш-таблиця](#hash-table)
+- [Більше знань](#more-knowledge)
+    - [Двійковий пошук](#binary-search)
+    - [Бітові операції](#bitwise-operations)
+- [Дерева](#trees)
+    - [Дерева - примітки та передумови](#trees---notes--background)
+    - [Бінарні дерева пошуку: BSTs](#binary-search-trees-bsts)
+    - [Купа / Пріоритетна черга / Бінарна купа](#heap--priority-queue--binary-heap)
+    - Збалансовані дерева пошуку (загальна концепція, не деталі)
+    - Обходи: preorder, inorder, postorder, BFS, DFS
+- [Сортування](#sorting)
+    - вибір (selection)
+    - вставка (insertion)
+    - купчасте сортування (heapsort)
+    - швидке сортування (quicksort)
+    - злиття (merge sort)
+- [Графи](#graphs)
+    - спрямовані (directed)
+    - неспрямовані (undirected)
+    - матриця суміжності (adjacency matrix)
+    - список суміжності (adjacency list)
+    - обходи: BFS, DFS (traversals: BFS, DFS)
+- [Ще більше знань](#even-more-knowledge)
+    - [Рекурсія](#recursion)
+    - [Динамічне програмування](#dynamic-programming)
+    - [Шаблони проектування](#design-patterns)
+    - [Комбінаторика (n choose k) та ймовірність](#combinatorics-n-choose-k--probability)
+    - [NP, NP-повні та Апроксимаційні Алгоритми](#np-np-complete-and-approximation-algorithms)
+    - [Як комп'ютери опрацьовують програму](#how-computers-process-a-program)
+    - [Кеші](#caches)
+    - [Процеси та Треди](#processes-and-threads)
+    - [Тестування](#testing)
+    - [Пошук та маніпуляції з рядками](#string-searching--manipulations)
+    - [Спроби](#tries)
+    - [Числа з рухомою комою](#floating-point-numbers)
+    - [Юнікод](#unicode)
+    - [Ендіанність](#endianness)
+    - [Нетворкінг (мережі)](#networking)
+- [Фінальний огляд](#final-review)
+
+### Отримання роботи
+
+- [Оновіть своє резюме](#your-resume)
+- [Знайдіть роботу](#find-a-job)
+- [Процес співбесіди та загальна підготовка до співбесіди](#interview-process--general-interview-prep)
+- [Підготуйтеся до співбесіди](#be-thinking-of-for-when-the-interview-comes)
+- [Підготуйте запитання до інтерв'юера](#have-questions-for-the-interviewer)
+- [Як тільки отримали роботу](#once-youve-got-the-job)
+
+---------------- Все, що нижче цього пункту необов'язково ----------------
+
+- [Додаткові книги](#additional-books)
+- [Проектування систем, Масштабування, Обробка даних](#system-design-scalability-data-handling) (якщо у вас є досвід роботи 4+ років)
+- [Додаткове навчання](#additional-learning)
+    - [Компілятори](#compilers)
+    - [Emacs та vi(m)](#emacs-and-vim)
+    - [Засоби командного рядка Unix (Unix CLI tools)](#unix-command-line-tools)
+    - [Теорія інформації](#information-theory-videos)
+    - [Паритет та код Хеммінга](#parity--hamming-code-videos)
+    - [Ентропія](#entropy)
+    - [Криптографія](#cryptography)
+    - [Стиснення](#compression)
+    - [Комп'ютерна безпека](#computer-security)
+    - [Прибирання сміття](#garbage-collection)
+    - [Паралельне програмування](#parallel-programming)
+    - [Системи Обміну повідомленнями, Серіалізації та Черги](#messaging-serialization-and-queueing-systems)
     - [A*](#a)
-    - [Fast Fourier Transform](#fast-fourier-transform)
-    - [Bloom Filter](#bloom-filter)
+    - [Швидке перетворення Фур'є](#fast-fourier-transform)
+    - [фільтр Блума (Bloom Filter)](#bloom-filter)
     - [HyperLogLog](#hyperloglog)
-    - [Locality-Sensitive Hashing](#locality-sensitive-hashing)
-    - [van Emde Boas Trees](#van-emde-boas-trees)
-    - [Augmented Data Structures](#augmented-data-structures)
-    - [N-ary (K-ary, M-ary) trees](#n-ary-k-ary-m-ary-trees)
-    - [Balanced search trees](#balanced-search-trees)
-        - AVL trees
-        - Splay trees
-        - Red/black trees
-        - 2-3 search trees
-        - 2-3-4 Trees (aka 2-4 trees)
-        - N-ary (K-ary, M-ary) trees
-        - B-Trees
-    - [k-D Trees](#k-d-trees)
-    - [Skip lists](#skip-lists)
-    - [Network Flows](#network-flows)
-    - [Math for Fast Processing](#math-for-fast-processing)
+    - [Локально-чутливе Хешування (Locality-Sensitive Hashing)](#locality-sensitive-hashing)
+    - [Дерева ван Емде Боаса](#van-emde-boas-trees)
+    - [Доповнені (аугментовані) структури даних](#augmented-data-structures)
+    - [N-ary (K-ary, M-ary) дерева](#n-ary-k-ary-m-ary-trees)
+    - [Збалансовані дерева пошуку (Balanced search trees)](#balanced-search-trees)
+        - AVL дерева
+        - Splay дерева
+        - Red/black дерева
+        - 2-3 search дерева
+        - 2-3-4 дерева (aka 2-4 дерева)
+        - N-ary (K-ary, M-ary) дерева
+        - B-дерева
+    - [k-D дерева](#k-d-trees)
+    - [Списки пропуску (Skip lists)](#skip-lists)
+    - [Мережеві потоки](#network-flows)
+    - [Математика для Швидкої Обробки](#math-for-fast-processing)
     - [Treap](#treap)
-    - [Linear Programming](#linear-programming)
-    - [Geometry, Convex hull](#geometry-convex-hull)
-    - [Discrete math](#discrete-math)
-    - [Machine Learning](#machine-learning)
-- [Additional Detail on Some Subjects](#additional-detail-on-some-subjects)
-- [Video Series](#video-series)
-- [Computer Science Courses](#computer-science-courses)
+    - [Лінійне програмування](#linear-programming-videos)
+    - [Геометрія, Випуклий корпус](#geometry-convex-hull-videos)
+    - [Дискретна математика](#discrete-math)
+- [Додаткова інформація про деякі теми](#additional-detail-on-some-subjects)
+- [Відео](#video-series)
+- [Курси комп'ютерних наук](#computer-science-courses)
+- [Статті](#papers)
 
 ---
 
 ## Чому це використовувати?
 
-Я слідую цьому плану, аби підготуватись до мого інтерв'ю в Google. Я займався веб-розробкою, створенням сервісів та запуском стартапів з 1997. У мене економічна освіта, не комп'ютерна.
-Я досяг успіху в своїй кар'єрі, але я хочу працювати в Google. Я хочу розвиватись, досліджувати більші системи та отримати реальне розуміння комп'ютерних систем, ефективності алгоритмів та структур даних, низько-рівневих мов, і як це все працює. І якщо ви не знаєте чогось з цього списку, Google не найме вас.
+Якщо ви хочете працювати інженером програмного забезпечення у великій компанії, це те, що вам потрібно знати.
+
+Якщо ви, як і я, не встигли отримати ступінь з комп'ютерних наук, цей курс допоможе вам надолужити згаяне і заощадити чотири роки вашого життя.
 
-Коли я розпочинав цей проект, я не міг відрізнити стек від купи, нічого не знав про Big-O, дерева, або як розглянути граф. Якби мені тоді довелось написати алгоритм сортування, то легко можу вас запевнити - він не був би найкращим.
-Всі структури даних, які я колись використовував, були вже вбудовані в мову програмування, а я навіть не знав, як вони працюють "під капотом". Мені ніколи не доводилось розбиратись з пам'яттю, окрім випадків, коли я отримував "OutOfMemoryException", тоді мені доводилось шукати вихід з ситуації.
-Я використовував кілька багатовимірних масивів та тисячі звичайних масивів, проте я ніколи не створював структури даних з нуля.
+Коли я починав цей проект, я не знав, як відрізнити стек від купи, не знав нічого про Big-O, або про дерева, або про те, як обходити граф. Якби мені довелося писати алгоритм сортування, можу сказати, що він був би жахливим. Кожна структура даних, яку я коли-небудь використовував, була вбудована в мову, і я взагалі не знав, як вони працюють під капотом. Мені ніколи не доводилося керувати пам'яттю, хіба що процес, який я запускав, видавав помилку «не вистачило пам'яті», і тоді мені доводилося шукати обхідний шлях. У своєму житті я використовував кілька багатовимірних масивів і тисячі асоціативних масивів, але я ніколи не створював структури даних з нуля.
 
-Але, пройшовши цей план навчання, я впевнений, що мене візьмуть на цю роботу. Це дійсно великий план. Він займе місяці, але якщо ви вже знайомі з багатьма речами з цього списку, то, очевидно, ви витратите значно менше часу.
+Це довгий план. Це може зайняти кілька місяців. Якщо ви вже знайомі з багатьма з цих питань, це займе набагато менше часу.
 
 ## Як це використовувати
 
 Весь текст нижче - це список, а вам потрібно пройти всі його елементи зверху вниз.
 
-Я використовую спеціальну Github розмітку, щоб відслідковувати свій прогрес.
+Я використовую спеціальну Github розмітку - markdown, щоб відслідковувати свій прогрес.
+
+  - [Більше про markdown розмітку GitHub](https://guides.github.com/features/mastering-markdown/#GitHub-flavored-markdown)
 
+### Якщо ви не хочете використовувати git
 
-**Створіть нову гілку, аби ви могли теж відмічати зроблені задачі, поміщаючи x в квадратні дужки: [x]**
+На цій сторінці натисніть кнопку «Код» ("Code") вгорі, а потім натисніть «Завантажити ZIP» ("Download ZIP"). Розпакуйте файл, і ви зможете працювати з текстовими файлами.
 
-    Форкніть собі гілку та введіть команди нижче
+Якщо ви відкриваєте код у редакторі коду, який розуміє розмітку, ви побачите, що все відформатовано правильно.
 
-`git checkout -b progress`
+![How to download the repo as a zip file](https://d3j2pkmjtin6ou.cloudfront.net/how-to-download-as-zip.png)
 
-`git remote add jwasham https://github.com/jwasham/coding-interview-university`
+### Якщо вам зручно працювати з git
 
-`git fetch --all`
+Створіть нову гілку, аби ви могли відмічати зроблені задачі, поміщаючи x в квадратні дужки: [x]
 
-    Відмітьте всі елементи X після того, як завершите свої зміни
+1. ***Форкніть репозиторій GitHub:*** `https://github.com/jwasham/coding-interview-university` натиснувши на кнопку Форк (Fork).
 
-`git add . `
+    ![Fork the GitHub repo](https://d3j2pkmjtin6ou.cloudfront.net/fork-button.png)
 
-`git commit -m "Marked x" `
+1. Клонуйте в локальний репозиторій:
 
-`git rebase jwasham/main `
+    ```bash
+    git clone https://github.com/<YOUR_GITHUB_USERNAME>/coding-interview-university.git
+    cd coding-interview-university
+    git remote add upstream https://github.com/jwasham/coding-interview-university.git
+    git remote set-url --push upstream DISABLE  # so that you don't push your personal progress back to the original repo
+    ```
 
-`git push --force `
+1. Позначте всі поля X після того, як ви внесли зміни:
 
-[Більше про Github розмітку](https://guides.github.com/features/mastering-markdown/#GitHub-flavored-markdown)
+    ```bash
+    git commit -am "Marked personal progress"
+    git pull upstream main  # keep your fork up-to-date with changes from the original repo
+
+    git push # just pushes to your fork
+    ```
 
 ## Не почувайтесь недостатньо розумними
-- Successful software engineers are smart, but many have an insecurity that they aren't smart enough.
-- [The myth of the Genius Programmer](https://www.youtube.com/watch?v=0SARbwvhupQ)
-- [It's Dangerous to Go Alone: Battling the Invisible Monsters in Tech](https://www.youtube.com/watch?v=1i8ylq4j_EY)
 
-## About Video Resources
+- Успішні інженери програмного забезпечення розумні, але багато хто з них відчуває невпевненість у тому, що вони недостатньо розумні.
+- Наступні відео можуть допомогти вам подолати цю невпевненість:
+    - Міф про геніального програміста [The myth of the Genius Programmer](https://www.youtube.com/watch?v=0SARbwvhupQ)
+    - Небезпечно йти наодинці: Боротьба з невидимими монстрами в технологіях [It's Dangerous to Go Alone: Battling the Invisible Monsters in Tech](https://www.youtube.com/watch?v=1i8ylq4j_EY)
+
+## Про відеоресурси
+
+Деякі відео доступні лише за умови реєстрації на курсах Coursera або EdX. Це так звані масові відкриті курси (MOOCs). Іноді заняття не проводяться, тому вам доведеться чекати кілька місяців, і ви не матимете доступу.
 
-Some videos are available only by enrolling in a Coursera, EdX, or Lynda.com class. These are called MOOCs.
-Sometimes the classes are not in session so you have to wait a couple of months, so you have no access. Lynda.com courses are not free.
+Було б чудово замінити ресурси онлайн-курсів безкоштовними і завжди доступними публічними джерелами, такими як відео на YouTube (бажано університетські лекції), щоб ви могли вивчати їх у будь-який час, а не лише під час сесії конкретного онлайн-курсу.
 
-    I'd appreciate your help to add free and always-available public sources, such as YouTube videos to accompany the online course videos.
-    I like using university lectures.
+## Оберіть мову програмування
 
+Вам потрібно буде обрати мову програмування для співбесід з кодування, але вам також потрібно буде знайти мову, яку ви зможете використовувати для вивчення концепцій комп'ютерних наук.
 
-## Interview Process & General Interview Prep
+Бажано, щоб мова була однаковою, щоб вам потрібно було володіти лише однією мовою.
 
-- [ ] [ABC: Always Be Coding](https://medium.com/always-be-coding/abc-always-be-coding-d5f8051afce2#.4heg8zvm4)
-- [ ] [Whiteboarding](https://medium.com/@dpup/whiteboarding-4df873dbba2e#.hf6jn45g1)
-- [ ] [Demystifying Tech Recruiting](https://www.youtube.com/watch?v=N233T0epWTs)
-- [ ] Cracking The Coding Interview Set 1:
-    - [ ] [Gayle L McDowell - Cracking The Coding Interview (video)](https://www.youtube.com/watch?v=rEJzOhC5ZtQ)
-    - [ ] [Cracking the Coding Interview with Author Gayle Laakmann McDowell (video)](https://www.youtube.com/watch?v=aClxtDcdpsQ)
-- [ ] How to Get a Job at the Big 4:
-    - [ ] [How to Get a Job at the Big 4 - Amazon, Facebook, Google & Microsoft (video)](https://www.youtube.com/watch?v=YJZCUhxNCv8)
+### Для цього навчального плану
 
-- [ ] Prep Course:
-    - [ ] [Software Engineer Interview Unleashed (paid course)](https://www.udemy.com/software-engineer-interview-unleashed):
-        - Learn how to make yourself ready for software engineer interviews from a former Google interviewer.
-    - [ ] [Python for Data Structures, Algorithms, and Interviews! (paid course)](https://www.udemy.com/python-for-data-structures-algorithms-and-interviews/):
-        - A Python centric interview prep course which covers data structures, algorithms, mock interviews and much more.
+Коли я складав навчальний план, я використовував 2 мови для більшої його частини: C та Python
 
-## Pick One Language for the Interview
+Ви можете використовувати мову, якою вам зручно виконувати завдання
+на написання коду, але для великих компаній ці мови є найкращим вибором:
 
-You can use a language you are comfortable in to do the coding part of the interview, but for large companies, these are solid choices:
+* С: Дуже низький рівень. Дозволяє працювати з покажчиками та розподілом/виділенням пам'яті, тому ви відчуваєте структури даних та алгоритми до мозку кісток. У мовах вищого рівня, таких як Python або Java, вони приховані від вас. У повсякденній роботі це чудово, але коли ви вивчаєте, як побудовані ці низькорівневі структури даних, чудово відчувати себе ближче до металу.
+    - C є скрізь. Ви побачите приклади в книгах, лекціях, відео, *всюди* під час навчання.
+    - Мова програмування C, 2-е видання [The C Programming Language, 2nd Edition](https://www.amazon.com/Programming-Language-Brian-W-Kernighan/dp/0131103628)
+        - Це коротка книжка, але вона дасть вам чудові знання про мову C, і якщо ви трохи попрактикуєтесь
+            ви швидко станете вправним. Розуміння C допоможе вам зрозуміти, як працюють програми та пам'ять.
+        - Вам не потрібно заглиблюватися в книгу (або навіть дочитувати її). Просто дійдіть до того рівня, на якому вам буде комфортно читати і писати C.
+* Python: Python: Сучасна і дуже виразна, я вивчив її, тому що вона дуже корисна, а також дозволяє мені писати менше коду під час співбесіди.
+
+Це мої уподобання. Ви, звичайно, робіть, що хочете.
+
+Можливо, вам це не знадобиться, але ось кілька сайтів для вивчення нової мови:
+- [Exercism](https://exercism.org/tracks)
+- [Codewars](http://www.codewars.com)
+- [HackerEarth](https://www.hackerearth.com/for-developers/)
+- [Scaler Topics (Java, C++)](https://www.scaler.com/topics/)
+- [Programiz PRO Community Challenges)](https://programiz.pro/)
+
+### Для співбесіди з кодування
+
+Ви можете використовувати мову, якою вам зручно писати код під час співбесіди, але для великих компаній ці мови є найкращим вибором:
 
 - C++
 - Java
 - Python
 
-You could also use these, but read around first. There may be caveats:
+Ви також можете скористатися цими, але спочатку почитайте навколо. Можуть бути застереження:
 
 - JavaScript
 - Ruby
 
-You need to be very comfortable in the language and be knowledgeable.
+Ось стаття, яку я написав про вибір мови для співбесіди:
+[Pick One Language for the Coding Interview](https://startupnextdoor.com/important-pick-one-language-for-the-coding-interview/). 
 
-Read more about choices:
-- http://www.byte-by-byte.com/choose-the-right-language-for-your-coding-interview/
-- http://blog.codingforinterviews.com/best-programming-language-jobs/
+Це оригінальна стаття, на якій ґрунтується мій пост: [Choosing a Programming Language for Interviews](https://web.archive.org/web/20210516054124/http://blog.codingforinterviews.com/best-programming-language-jobs/)
 
-[See language resources here](programming-language-resources.md)
+Ви повинні дуже добре володіти мовою і бути обізнаним.
 
-You'll see some C, C++, and Python learning included below, because I'm learning. There are a few books involved, see the bottom.
+Дізнайтеся більше про вибір:
+- [Оберіть правильну мову для вашої співбесіди з кодування](http://www.byte-by-byte.com/choose-the-right-language-for-your-coding-interview/)
 
-## Book List
+[Дивіться мовні ресурси тут](programming-language-resources.md)
 
-This is a shorter list than what I used. This is abbreviated to save you time.
+## Книги про структури даних та алгоритми
 
-### Interview Prep
+Ця книга стане вашим фундаментом у вивченні компʼютерних наук.
 
-- [ ] [Programming Interviews Exposed: Secrets to Landing Your Next Job, 2nd Edition](http://www.wiley.com/WileyCDA/WileyTitle/productCd-047012167X.html)
-    - answers in C++ and Java
-    - this is a good warm-up for Cracking the Coding Interview
-    - not too difficult, most problems may be easier than what you'll see in an interview (from what I've read)
-- [ ] [Cracking the Coding Interview, 6th Edition](http://www.amazon.com/Cracking-Coding-Interview-6th-Programming/dp/0984782850/)
-    - answers in Java
+Просто виберіть одну, мовою, яка вам буде зручна. Вам доведеться багато читати і кодувати.
+
+### C
+
+- Алгоритми на C, частини 1-5 (комплект), 3-тє видання [Algorithms in C, Parts 1-5 (Bundle), 3rd Edition](https://www.amazon.com/Algorithms-Parts-1-5-Bundle-Fundamentals/dp/0201756080)
+    - Основи, структури даних, алгоритми сортування, пошуку та побудови графів
+
+### Python
 
-If you have tons of extra time:
+- Структури даних та алгоритми в Python [Data Structures and Algorithms in Python](https://www.amazon.com/Structures-Algorithms-Python-Michael-Goodrich/dp/1118290275/)
+    - by Goodrich, Tamassia, Goldwasser
+    - Мені сподобалася ця книга. Вона охоплює все і навіть більше.
+    - Пітонівський код
+    - мій яскравий книжковий звіт: https://startupnextdoor.com/book-report-data-structures-and-algorithms-in-python/
 
-- [ ] [Elements of Programming Interviews (C++ version)](https://www.amazon.com/Elements-Programming-Interviews-Insiders-Guide/dp/1479274836)
-- [ ] [Elements of Programming Interviews (Java version)](https://www.amazon.com/Elements-Programming-Interviews-Java-Insiders/dp/1517435803/)
+### Java
 
-### Computer Architecture
+Ваш вибір:
 
-If short on time:
+- Goodrich, Tamassia, Goldwasser
+    - Структури даних та алгоритми в Java [Data Structures and Algorithms in Java](https://www.amazon.com/Data-Structures-Algorithms-Michael-Goodrich/dp/1118771338/)
+- Sedgewick and Wayne:
+    - Алгоритми [Algorithms](https://www.amazon.com/Algorithms-4th-Robert-Sedgewick/dp/032157351X/)
+    - Безкоштовний курс на Coursera, який охоплює книгу (викладається авторами!):
+        - Алгоритми I [Algorithms I](https://www.coursera.org/learn/algorithms-part1)
+        - Алгоритми II [Algorithms II](https://www.coursera.org/learn/algorithms-part2)
 
-- [ ] [Write Great Code: Volume 1: Understanding the Machine](https://www.amazon.com/Write-Great-Code-Understanding-Machine/dp/1593270038)
-    - The book was published in 2004, and is somewhat outdated, but it's a terrific resource for understanding a computer in brief.
-    - The author invented HLA, so take mentions and examples in HLA with a grain of salt. Not widely used, but decent examples of what assembly looks like.
-    - These chapters are worth the read to give you a nice foundation:
-        - Chapter 2 - Numeric Representation
-        - Chapter 3 - Binary Arithmetic and Bit Operations
-        - Chapter 4 - Floating-Point Representation
-        - Chapter 5 - Character Representation
-        - Chapter 6 - Memory Organization and Access
-        - Chapter 7 - Composite Data Types and Memory Objects
-        - Chapter 9 - CPU Architecture
-        - Chapter 10 - Instruction Set Architecture
-        - Chapter 11 - Memory Architecture and Organization
+### C++
 
-If you have more time (I want this book):
+Ваш вибір:
 
-- [ ] [Computer Architecture, Fifth Edition: A Quantitative Approach](https://www.amazon.com/dp/012383872X/)
-    - For a richer, more up-to-date (2011), but longer treatment
+- Goodrich, Tamassia, and Mount
+    - Структури даних та алгоритми в C++, 2-е видання [Data Structures and Algorithms in C++, 2nd Edition](https://www.amazon.com/Data-Structures-Algorithms-Michael-Goodrich/dp/0470383275)
+- Sedgewick and Wayne
+    - Алгоритми в C++, частини 1-4: Основи, структура даних, сортування, пошук [Algorithms in C++, Parts 1-4: Fundamentals, Data Structure, Sorting, Searching](https://www.amazon.com/Algorithms-Parts-1-4-Fundamentals-Structure/dp/0201350882/)
+    - Алгоритми в C++ Частина 5: Графові алгоритми [Algorithms in C++ Part 5: Graph Algorithms](https://www.amazon.com/Algorithms-Part-Graph-3rd-Pt-5/dp/0201361183/)
 
-### Language Specific
+## Книги з підготовки до співбесіди
 
-**You need to choose a language for the interview (see above).** Here are my recommendations by language. I don't have resources for all languages. I welcome additions.
+Вам не потрібно купувати купу цих книг. Чесно кажучи, "Проходження співбесіди з кодування" ("Cracking the Coding Interview"), мабуть, достатньо,
+але я купив ще, щоб мати більше практики. Але я завжди роблю забагато.
 
-If you read though one of these, you should have all the data structures and algorithms knowledge you'll need to start doing coding problems.
-**You can skip all the video lectures in this project**, unless you'd like a review.
+Я купив обидві наступни книжки. Вони дали мені багато практики.
 
-[Additional language-specific resources here.](programming-language-resources.md)
+- Програмування співбесіди розкрито: Кодування вашого шляху через співбесіду, 4-е видання [Programming Interviews Exposed: Coding Your Way Through the Interview, 4th Edition](https://www.amazon.com/Programming-Interviews-Exposed-Through-Interview/dp/111941847X/)
+    - Відповіді на C++ та Java
+    - Це хороша розминка перед Cracking the Coding Interview
+    - Не надто складно. Більшість проблем можуть бути простішими, ніж ті, що ви побачите на співбесіді (з того, що я читав)
+- Проходження співбесіди з кодування, 6-й випуск [Cracking the Coding Interview, 6th Edition](http://www.amazon.com/Cracking-Coding-Interview-6th-Programming/dp/0984782850/)
+    - відповіді на Java
 
-### C++
+### Якщо у вас багато вільного часу:
 
-I haven't read these two, but they are highly rated and written by Sedgewick. He's awesome.
+Оберіть одну:
 
-- [ ] [Algorithms in C++, Parts 1-4: Fundamentals, Data Structure, Sorting, Searching](https://www.amazon.com/Algorithms-Parts-1-4-Fundamentals-Structure/dp/0201350882/)
-- [ ] [Algorithms in C++ Part 5: Graph Algorithms](https://www.amazon.com/Algorithms-Part-Graph-3rd-Pt-5/dp/0201361183/)
+- Елементи співбесід з програмування (версія на C++) [Elements of Programming Interviews (C++ version)](https://www.amazon.com/Elements-Programming-Interviews-Insiders-Guide/dp/1479274836)
+- Елементи співбесід з програмування (версія на Python) [Elements of Programming Interviews in Python](https://www.amazon.com/Elements-Programming-Interviews-Python-Insiders/dp/1537713949/)
+- Елементи співбесід з програмування (версія на Java) [Elements of Programming Interviews (Java version)](https://www.amazon.com/Elements-Programming-Interviews-Java-Insiders/dp/1517435803/)
+        - [Супутній проект - заглушки методів та тестові кейси для кожної проблеми в книзі](https://github.com/gardncl/elements-of-programming-interviews)
 
-If you have a better recommendation for C++, please let me know. Looking for a comprehensive resource.
 
-### Java
 
-- [ ] [Algorithms (Sedgewick and Wayne)](https://www.amazon.com/Algorithms-4th-Robert-Sedgewick/dp/032157351X/)
-    - videos with book content (and Sedgewick!):
-        - [Algorithms I](https://www.youtube.com/user/algorithmscourses/playlists?view=50&sort=dd&shelf_id=2)
-        - [Algorithms II](https://www.youtube.com/user/algorithmscourses/playlists?shelf_id=3&view=50&sort=dd)
+## Не робіть моїх помилок
 
-OR:
+Цей список зростав протягом багатьох місяців, і так, він трохи вийшов з-під контролю.
 
-- [ ] [Data Structures and Algorithms in Java](https://www.amazon.com/Data-Structures-Algorithms-Michael-Goodrich/dp/1118771338/)
-    - by Goodrich, Tamassia, Goldwasser
-    - used as optional text for CS intro course at UC Berkeley
-    - see my book report on the Python version below. This book covers the same topics.
+Ось кілька помилок, яких я припустився, щоб у вас був кращий досвід. І ви заощадите місяці часу.
 
-### Python
+### 1. Ви не запам'ятаєте всього.
 
-- [ ] [Data Structures and Algorithms in Python](https://www.amazon.com/Structures-Algorithms-Python-Michael-Goodrich/dp/1118290275/)
-    - by Goodrich, Tamassia, Goldwasser
-    - I loved this book. It covered everything and more.
-    - Pythonic code
-    - my glowing book report: https://startupnextdoor.com/book-report-data-structures-and-algorithms-in-python/
+Я дивився години відео і робив численні нотатки, і через місяці багато чого не пам'ятав. Я провів 3 дні, переглядаючи 
+свої нотатки і роблячи флеш-картки, щоб мати змогу повторити. Мені не потрібні були всі ці знання.
 
+Прочитайте, будь ласка, щоб не робити моїх помилок:
 
-### Optional Books
+Збереження знань з комп'ютерних наук [Retaining Computer Science Knowledge](https://startupnextdoor.com/retaining-computer-science-knowledge/)
 
-**Some people recommend these, but I think it's going overboard, unless you have many years of software engineering experience and expect a much harder interview:**
+### 2. Використовуйте флеш-картки
 
-- [ ] [Algorithm Design Manual](http://www.amazon.com/Algorithm-Design-Manual-Steven-Skiena/dp/1849967202) (Skiena)
-    - As a review and problem recognition
-    - The algorithm catalog portion is well beyond the scope of difficulty you'll get in an interview.
-    - This book has 2 parts:
-        - class textbook on data structures and algorithms
-            - pros:
-                - is a good review as any algorithms textbook would be
-                - nice stories from his experiences solving problems in industry and academia
-                - code examples in C
-            - cons:
-                - can be as dense or impenetrable as CLRS, and in some cases, CLRS may be a better alternative for some subjects
-                - chapters 7, 8, 9 can be painful to try to follow, as some items are not explained well or require more brain than I have
-                - don't get me wrong: I like Skiena, his teaching style, and mannerisms, but I may not be Stony Brook material.
-        - algorithm catalog:
-            - this is the real reason you buy this book.
-            - about to get to this part. Will update here once I've made my way through it.
-    - Can rent it on kindle
-    - Half.com is a great resource for textbooks at good prices.
-    - Answers:
-        - [Solutions](http://www.algorithm.cs.sunysb.edu/algowiki/index.php/The_Algorithms_Design_Manual_(Second_Edition))
-        - [Solutions](http://blog.panictank.net/category/algorithmndesignmanualsolutions/page/2/)
-    - [Errata](http://www3.cs.stonybrook.edu/~skiena/algorist/book/errata)
+Щоб вирішити цю проблему, я зробив невеличкий сайт флеш-карток, на який можна було додавати флеш-картки 2 типів: загальні та кодові.
+Кожна картка має свій формат. Я створив сайт для мобільних пристроїв, щоб я міг переглядати його на телефоні та планшеті, де б я не був.
 
-- [ ] [Introduction to Algorithms](https://www.amazon.com/Introduction-Algorithms-3rd-MIT-Press/dp/0262033844)
-    - **Important:** Reading this book will only have limited value. This book is a great review of algorithms and data structures, but won't teach you how to write good code. You have to be able to code a decent solution efficiently.
-    - Half.com is a great resource for textbooks at good prices.
-    - aka CLR, sometimes CLRS, because Stein was late to the game
+Зробіть свій власний безкоштовно:
 
-- [ ] [Programming Pearls](http://www.amazon.com/Programming-Pearls-2nd-Jon-Bentley/dp/0201657880)
-    - The first couple of chapters present clever solutions to programming problems (some very old using data tape) but
-      that is just an intro. This a guidebook on program design and architecture, much like Code Complete, but much shorter.
+- Репозиторій сайту з флеш-картками [Flashcards site repo](https://github.com/jwasham/computer-science-flash-cards)
 
-- ~~"Algorithms and Programming: Problems and Solutions" by Shen~~
-    - A fine book, but after working through problems on several pages I got frustrated with the Pascal, do while loops, 1-indexed arrays, and unclear post-condition satisfaction results.
-    - Would rather spend time on coding problems from another book or online coding problems.
+**Я НЕ РЕКОМЕНДУЮ використовувати мої картки.** Їх занадто багато, і більшість з них - тривіальні дрібниці, які вам не потрібні.
 
+Але якщо ви не хочете мене слухати, то ось вам:
+- Моя база даних флеш-карток (1200 карток) [My flash cards database (1200 cards)](https://github.com/jwasham/computer-science-flash-cards/blob/main/cards-jwasham.db):
+- Моя база даних флеш-карток (екстрім - 1800 карток) [My flash cards database (extreme - 1800 cards)](https://github.com/jwasham/computer-science-flash-cards/blob/main/cards-jwasham-extreme.db):
 
-## Before you Get Started
+Майте на увазі, що я переборщив і маю картки, що охоплюють все - від асемблера і дрібниць Python до машинного навчання і статистики. Це занадто багато за те, що потрібно.
 
-This list grew over many months, and yes, it kind of got out of hand.
+**Нотатки на флеш-картках:** Коли ви вперше зрозумієте, що знаєте відповідь, не позначайте її як відому. Ви повинні побачити
+одну й ту саму картку і відповісти на неї кілька разів правильно, перш ніж ви дійсно дізнаєтесь її. Повторення поглибить
+ці знання у вашому мозку.
 
-Here are some mistakes I made so you'll have a better experience.
+Альтернативою використанню мого сайту є [Anki](http://ankisrs.net/), який мені неодноразово рекомендували. Там використовується система повторень, щоб допомогти вам запам'ятати.
+Він зручний у використанні, доступний на всіх платформах і має систему синхронізації в Cloud. Коштує $25 на iOS, але безкоштовно на інших платформах.
 
-### 1. You Won't Remember it All
+Моя база даних флеш-карт у форматі Anki: https://ankiweb.net/shared/info/25173560 (дякую [@xiewenya](https://github.com/xiewenya))
 
-I watched hours of videos and took copious notes, and months later there was much I didn't remember. I spent 3 days going
-through my notes and making flashcards so I could review.
+Деякі студенти згадували про проблеми з форматуванням пробілів, які можна виправити наступним чином: відкрийте колоду, відредагуйте картку, клацніть на картки (Cards), виберіть радіо-кнопку «стилі» (Styles) і додайте до класу картки стиль "white-space: pre;".
 
-Read please so you won't make my mistakes:
+### 3. Складайте питання для співбесіди під час навчання кодуванню
 
-[Retaining Computer Science Knowledge](https://startupnextdoor.com/retaining-computer-science-knowledge/)
+ЦЕ ДУЖЕ ВАЖЛИВО.
 
-### 2. Use Flashcards
+Почніть кодувати питання для співбесіди, поки вивчаєте структури даних та алгоритми.
 
-To solve the problem, I made a little flashcards site where I could add flashcards of 2 types: general and code.
-Each card has different formatting.
+Вам потрібно застосовувати те, що ви вивчаєте, для вирішення проблем, інакше ви забудете. Я зробив цю помилку.
 
-I made a mobile-first website so I could review on my phone and tablet, wherever I am.
+Після того, як ви вивчили тему і відчуваєте себе комфортно з нею, наприклад, **зв'язані списки**:
+1. Відкрийте одну з [книг для підготовки до співбесіди з кодування](#interview-prep-books) (або веб-сайти з проблем кодування, перелічені нижче)
+1. Поставте (зробіть) 2-3 запитання (задачі) про зв'язані списки.
+1. Перейдіть до наступної навчальної теми.
+1. Пізніше поверніться і розв'яжіть ще 2-3 задачі зі зв'язаними списками.
+1. Робіть це з кожною новою темою, яку ви вивчаєте.
 
-Make your own for free:
+**Виконуйте завдання під час навчання, а не після.**
 
-- [Flashcards site repo](https://github.com/jwasham/computer-science-flash-cards)
-- [My flash cards database (old - 1200 cards)](https://github.com/jwasham/computer-science-flash-cards/blob/main/cards-jwasham.db):
-- [My flash cards database (new - 1800 cards)](https://github.com/jwasham/computer-science-flash-cards/blob/main/cards-jwasham-extreme.db):
+Вас наймають не за знання, а за те, як ви їх застосовуєте.
 
-Keep in mind I went overboard and have cards covering everything from assembly language and Python trivia to machine learning and statistics. It's way too much for what's required.
+Для цього є багато ресурсів, перелічених нижче. Не зупиняйтеся.
 
-**Note on flashcards:** The first time you recognize you know the answer, don't mark it as known. You have to see the
-same card and answer it several times correctly before you really know it. Repetition will put that knowledge deeper in
-your brain.
+### 4. Зосередьтеся
 
-An alternative to using my flashcard site is [Anki](http://ankisrs.net/), which has been recommended to me numerous times. It uses a repetition system to help you remember.
-It's user-friendly, available on all platforms and has a cloud sync system. It costs $25 on iOS but is free on other platforms.
+Існує багато відволікаючих чинників, які можуть забирати дорогоцінний час. Зосередитися і сконцентруватися важко. Увімкніть музику без слів, і ви зможете досить добре зосередитися.
 
-My flashcard database in Anki format: https://ankiweb.net/shared/info/25173560 (thanks [@xiewenya](https://github.com/xiewenya))
+## Що не буде охоплено
 
-### 3. Review, review, review
+Це поширені технології, але вони не є частиною цього навчального плану:
 
-I keep a set of cheat sheets on ASCII, OSI stack, Big-O notations, and more. I study them when I have some spare time.
+- Javascript
+- HTML, CSS, та інші фронтенд технології
+- SQL
 
-Take a break from programming problems for a half hour and go through your flashcards.
+## Щоденний план
 
-### 4. Focus
+Цей курс охоплює багато тем. Кожна з них, ймовірно, займе у вас кілька днів, а може навіть тиждень чи більше. Це залежить від вашого графіку.
 
-There are a lot of distractions that can take up valuable time. Focus and concentration are hard.
+Кожного дня обирайте наступну тему зі списку, переглядайте відео на цю тему, а потім напишіть реалізацію
+цієї структури даних або алгоритму мовою, яку ви обрали для цього курсу.
 
-## What you won't see covered
+Ви можете побачити мій код тут:
+ - [C](https://github.com/jwasham/practice-c)
+ - [C++](https://github.com/jwasham/practice-cpp)
+ - [Python](https://github.com/jwasham/practice-python)
 
-These are prevalent technologies but not part of this study plan:
+Вам не потрібно запам'ятовувати кожен алгоритм. Ви просто повинні розуміти його достатньо, щоб мати можливість написати власну реалізацію.
 
-- SQL
-- Javascript
-- HTML, CSS, and other front-end technologies
+## Практика з питань кодування
+
+   Чому це тут? Я не готовий до співбесіди.
+
+[Тоді поверніться і прочитайте це.](#3-do-coding-interview-questions-while-youre-learning)
+
+Чому потрібно практикуватись у розв'язуванні задач з програмування:
+- Розпізнавання проблеми, і де потрібні правильні структури даних та алгоритми
+- Збір вимог до задачі
+- Обговорення проблеми так, як ви будете говорити на співбесіді
+- Кодування на дошці або папері, а не на комп'ютері
+- Визначення часової та просторової складності ваших рішень (див. Big-O нижче)
+- Тестування ваших рішень
+
+Існує чудовий вступ для методичного, комунікативного вирішення проблем під час співбесіди. Ви можете знайти це в книгах із співбесід з програмування, але я вважаю, що цей посібник є видатним:
+[Algorithm design canvas](http://www.hiredintech.com/algorithm-design/)
 
-## The Daily Plan
+Пишіть код на дошці або папері, а не на комп'ютері. Протестуйте з деякими зразками вхідних даних. Потім надрукуйте його та протестуйте на комп'ютері.
 
-Some subjects take one day, and some will take multiple days. Some are just learning with nothing to implement.
+Якщо у вас вдома немає дошки, візьміть великий блокнот для малювання в художньому магазині. Ви можете сидіти на дивані і практикуватись.
+Це моя «диванна дошка». Я додав ручку на фото лише для масштабу. Якщо ви використовуєте ручку, ви пошкодуєте, що не можете її стерти.
+Швидко стає брудно. **Я використовую олівець і гумку.**
 
-Each day I take one subject from the list below, watch videos about that subject, and write an implementation in:
-- C - using structs and functions that take a struct * and something else as args.
-- C++ - without using built-in types
-- C++ - using built-in types, like STL's std::list for a linked list
-- Python - using built-in types (to keep practicing Python)
-- and write tests to ensure I'm doing it right, sometimes just using simple assert() statements
-- You may do Java or something else, this is just my thing.
+![моя диванна дошка](https://d3j2pkmjtin6ou.cloudfront.net/art_board_sm_2.jpg)
 
-You don't need all these. You need only [one language for the interview](#pick-one-language-for-the-interview).
+**Практика з питань кодування  - це не про запам'ятовування відповідей на задачі програмування.**
 
-Why code in all of these?
-- Practice, practice, practice, until I'm sick of it, and can do it with no problem (some have many edge cases and bookkeeping details to remember)
-- Work within the raw constraints (allocating/freeing memory without help of garbage collection (except Python))
-- Make use of built-in types so I have experience using the built-in tools for real-world use (not going to write my own linked list implementation in production)
+## Проблеми кодування
 
-I may not have time to do all of these for every subject, but I'll try.
+Не забудьте свої ключові книги по співбесідам з кодування [тут](#interview-prep-books).
 
-You can see my code here:
- - [C] (https://github.com/jwasham/practice-c)
- - [C++] (https://github.com/jwasham/practice-cpp)
- - [Python] (https://github.com/jwasham/practice-python)
+Вирішення проблем:
+- Як знайти рішення [How to Find a Solution](https://www.topcoder.com/thrive/articles/How%20To%20Find%20a%20Solution)
+- Як розібрати постановку задачі для топкодерів [How to Dissect a Topcoder Problem Statement](https://www.topcoder.com/thrive/articles/How%20To%20Dissect%20a%20Topcoder%20Problem%20Statement%20Content)
 
-You don't need to memorize the guts of every algorithm.
+Відео з питаннями до співбесіди на кодування:
+- ЯЗаслуговую (88 відео) [IDeserve (88 videos)](https://www.youtube.com/playlist?list=PLamzFoFxwoNjPfxzaWqs7cZGsPYy0x_gI)
+- Тушар Рой (5 плейлистів) [Tushar Roy (5 playlists)](https://www.youtube.com/user/tusharroy2525/playlists?shelf_id=2&view=50&sort=dd)
+    - Чудово підходить для покрокового вирішення проблем
+- Нік Уайт - Рішення на LeetCode (187 відео) [Nick White - LeetCode Solutions (187 Videos)](https://www.youtube.com/playlist?list=PLU_sdQYzUj2keVENTP0a5rdykRSgg9Wp-)
+    - Гарні пояснення рішення та коду
+    - Ви можете переглянути декілька за короткий час
+- ФішерКодер - Рішення на LeetCode [FisherCoder - LeetCode Solutions](https://youtube.com/FisherCoder)
 
-Write code on a whiteboard or paper, not a computer. Test with some sample inputs. Then test it out on a computer.
+Сайти викликів/практик:
+- [LeetCode](https://leetcode.com/)
+    - Мій улюблений сайт із завданнями на кодування. Він вартий того, щоб заплатити гроші за підписку на 1-2 місяці, які ви, ймовірно, витратите на підготовку.
+    - Дивіться відео Ніка Уайта та ФішерКодера вище для покрокового вивчення коду.
+- [HackerRank](https://www.hackerrank.com/)
+- [TopCoder](https://www.topcoder.com/)
+- [Codeforces](https://codeforces.com/)
+- [Codility](https://codility.com/programmers/)
+- [Geeks for Geeks](https://practice.geeksforgeeks.org/explore/?page=1)
+- [AlgoExpert](https://www.algoexpert.io/product)
+    - Створений інженерами Google, це також чудовий ресурс для відточування навичок.
+- [Project Euler](https://projecteuler.net/)
+    - дуже математично орієнтований і не дуже підходить для співбесід з кодування
 
-## Prerequisite Knowledge
+## Давайте починати!
 
-- [ ] **Learn C**
-    - C is everywhere. You'll see examples in books, lectures, videos, *everywhere* while you're studying.
-    - [ ] [C Programming Language, Vol 2](https://www.amazon.com/Programming-Language-Brian-W-Kernighan/dp/0131103628)
-        - This is a short book, but it will give you a great handle on the C language and if you practice it a little
-            you'll quickly get proficient. Understanding C helps you understand how programs and memory work.
-        - [answers to questions](https://github.com/lekkas/c-algorithms)
+Гаразд, досить розмов, давайте вчитися!
 
-- [ ] **How computers process a program:**
-    - [ ] [How does CPU execute program (video)](https://www.youtube.com/watch?v=42KTvGYQYnA)
-    - [ ] [Machine Code Instructions (video)](https://www.youtube.com/watch?v=Mv2XQgpbTNE)
+Але не забувайте виконувати завдання з кодування зверху, поки будете вчитися!
 
 ## Algorithmic complexity / Big-O / Asymptotic analysis
 - nothing to implement