Акщь Prerequisite Knowledge to Data Structures

This commit is contained in:
Ilyushin Evgeniy 2017-04-25 15:50:31 +03:00 committed by Ilyushin Evgeniy john.ilyushin@gmail.com
parent 25d125dc5e
commit 2ca71e00a7
1 changed files with 30 additions and 31 deletions

View File

@ -538,42 +538,41 @@ Google не возьмёт тебя на работу.
Пишите код на доске или листе бумаги, но не компьютере. Проверяйте на простых входных данных. Затем тестируйте на компьютере.
## 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)
- [ ] **Изучайте C**
- С используется везде. Вы встретите примеры в книгах, лекциях, видео, везде, пока вы будите учиться.
- [ ] [Язык программирования С, Vol 2](https://www.amazon.com/Programming-Language-Brian-W-Kernighan/dp/0131103628)
- Это не большая книга, но после ее прочтения вы получите необходимые знания по С и если будите практиковать,
то достаточно быстро его освоите. Понимание С поможет вам понять как программы и память работают.
- [ответы на вопросы](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)
- [ ] **Как компьютеры выполняют программу:**
- [ ] [Как CPU выполняет программы (video)](https://www.youtube.com/watch?v=42KTvGYQYnA)
- [ ] [Коды машинных инструкций(video)](https://www.youtube.com/watch?v=Mv2XQgpbTNE)
## Algorithmic complexity / Big-O / Asymptotic analysis
- nothing to implement
- [ ] [Harvard CS50 - Asymptotic Notation (video)](https://www.youtube.com/watch?v=iOq5kSKqeR4)
- [ ] [Big O Notations (general quick tutorial) (video)](https://www.youtube.com/watch?v=V6mKVRU1evU)
- [ ] [Big O Notation (and Omega and Theta) - best mathematical explanation (video)](https://www.youtube.com/watch?v=ei-A_wy5Yxw&index=2&list=PL1BaGV1cIH4UhkL8a9bJGG356covJ76qN)
## Сложность алгоритмов / Big-O / Асимптотический анализ
- ничего не реализовывать
- [ ] [Harvard CS50 - Асимптотическая нотация (video)](https://www.youtube.com/watch?v=iOq5kSKqeR4)
- [ ] [Big O нотация (основное, короткое руководство) (video)](https://www.youtube.com/watch?v=V6mKVRU1evU)
- [ ] [Big O нотация (и Omega и Theta) - лучшее математическое объяснение (video)](https://www.youtube.com/watch?v=ei-A_wy5Yxw&index=2&list=PL1BaGV1cIH4UhkL8a9bJGG356covJ76qN)
- [ ] Skiena:
- [video](https://www.youtube.com/watch?v=gSyDMtdPNpU&index=2&list=PLOtl7M3yp-DV69F32zdK7YJcNXpTunF2b)
- [slides](http://www3.cs.stonybrook.edu/~algorith/video-lectures/2007/lecture2.pdf)
- [ ] [A Gentle Introduction to Algorithm Complexity Analysis](http://discrete.gr/complexity/)
- [ ] [Orders of Growth (video)](https://class.coursera.org/algorithmicthink1-004/lecture/59)
- [ ] [Asymptotics (video)](https://class.coursera.org/algorithmicthink1-004/lecture/61)
- [ ] [UC Berkeley Big O (video)](https://youtu.be/VIS4YDpuP98)
- [ ] [UC Berkeley Big Omega (video)](https://youtu.be/ca3e7UVmeUc)
- [ ] [Amortized Analysis (video)](https://www.youtube.com/watch?v=B3SpQZaAZP4&index=10&list=PL1BaGV1cIH4UhkL8a9bJGG356covJ76qN)
- [ ] [Illustrating "Big O" (video)](https://class.coursera.org/algorithmicthink1-004/lecture/63)
- [ ] TopCoder (includes recurrence relations and master theorem):
- [Computational Complexity: Section 1](https://www.topcoder.com/community/data-science/data-science-tutorials/computational-complexity-section-1/)
- [Computational Complexity: Section 2](https://www.topcoder.com/community/data-science/data-science-tutorials/computational-complexity-section-2/)
- [ ] [Cheat sheet](http://bigocheatsheet.com/)
- [видео](https://www.youtube.com/watch?v=gSyDMtdPNpU&index=2&list=PLOtl7M3yp-DV69F32zdK7YJcNXpTunF2b)
- [слайды](http://www3.cs.stonybrook.edu/~algorith/video-lectures/2007/lecture2.pdf)
- [ ] [Плавное введение в анализ сложности алгоритмов](http://discrete.gr/complexity/)
- [ ] [Порядок роста (video)](https://class.coursera.org/algorithmicthink1-004/lecture/59)
- [ ] [Асимптотика (video)](https://class.coursera.org/algorithmicthink1-004/lecture/61)
- [ ] [UC Berkeley Big O (видео)](https://youtu.be/VIS4YDpuP98)
- [ ] [UC Berkeley Big Omega (видео)](https://youtu.be/ca3e7UVmeUc)
- [ ] [Amortized Analysis (видео)](https://www.youtube.com/watch?v=B3SpQZaAZP4&index=10&list=PL1BaGV1cIH4UhkL8a9bJGG356covJ76qN)
- [ ] [Иллюстрация "Big O" (ыидео)](https://class.coursera.org/algorithmicthink1-004/lecture/63)
- [ ] TopCoder (включая рекуррентные соотношений и основную теорему):
- [Вычислительная сложность: Часть 1](https://www.topcoder.com/community/data-science/data-science-tutorials/computational-complexity-section-1/)
- [Вычислительная сложность: Часть 2](https://www.topcoder.com/community/data-science/data-science-tutorials/computational-complexity-section-2/)
- [ ] [Шпаргалка](http://bigocheatsheet.com/)
If some of the lectures are too mathy, you can jump down to the bottom and
watch the discrete mathematics videos to get the background knowledge.
Если в некоторых лекциях слишком много математики, вы можете ниже найти и посмотреть
лекции по дискретной математике для получения базовых знаний.
## Data Structures