|
@@ -674,8 +674,8 @@ Google не возьмёт тебя на работу.
|
|
- dequeue: O(1) (связанный список и массив)
|
|
- dequeue: O(1) (связанный список и массив)
|
|
- empty: O(1) (связанный список и массив)
|
|
- empty: O(1) (связанный список и массив)
|
|
|
|
|
|
-- ### Hash table
|
|
|
|
- - [ ] Videos:
|
|
|
|
|
|
+- ### Хеш-таблица
|
|
|
|
+ - [ ] Видео:
|
|
- [ ] [Hashing with Chaining (video)](https://www.youtube.com/watch?v=0M_kIqhwbFo&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb&index=8)
|
|
- [ ] [Hashing with Chaining (video)](https://www.youtube.com/watch?v=0M_kIqhwbFo&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb&index=8)
|
|
- [ ] [Table Doubling, Karp-Rabin (video)](https://www.youtube.com/watch?v=BRO7mVIFt08&index=9&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
|
|
- [ ] [Table Doubling, Karp-Rabin (video)](https://www.youtube.com/watch?v=BRO7mVIFt08&index=9&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
|
|
- [ ] [Open Addressing, Cryptographic Hashing (video)](https://www.youtube.com/watch?v=rvdJDijO2Ro&index=10&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
|
|
- [ ] [Open Addressing, Cryptographic Hashing (video)](https://www.youtube.com/watch?v=rvdJDijO2Ro&index=10&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
|
|
@@ -683,7 +683,7 @@ Google не возьмёт тебя на работу.
|
|
- [ ] [(Advanced) Randomization: Universal & Perfect Hashing (video)](https://www.youtube.com/watch?v=z0lJ2k0sl1g&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=11)
|
|
- [ ] [(Advanced) Randomization: Universal & Perfect Hashing (video)](https://www.youtube.com/watch?v=z0lJ2k0sl1g&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=11)
|
|
- [ ] [(Advanced) Perfect hashing (video)](https://www.youtube.com/watch?v=N0COwN14gt0&list=PL2B4EEwhKD-NbwZ4ezj7gyc_3yNrojKM9&index=4)
|
|
- [ ] [(Advanced) Perfect hashing (video)](https://www.youtube.com/watch?v=N0COwN14gt0&list=PL2B4EEwhKD-NbwZ4ezj7gyc_3yNrojKM9&index=4)
|
|
|
|
|
|
- - [ ] Online Courses:
|
|
|
|
|
|
+ - [ ] Онлайн курсы:
|
|
- [ ] [Understanding Hash Functions (video)](https://www.lynda.com/Developer-Programming-Foundations-tutorials/Understanding-hash-functions/149042/177126-4.html)
|
|
- [ ] [Understanding Hash Functions (video)](https://www.lynda.com/Developer-Programming-Foundations-tutorials/Understanding-hash-functions/149042/177126-4.html)
|
|
- [ ] [Using Hash Tables (video)](https://www.lynda.com/Developer-Programming-Foundations-tutorials/Using-hash-tables/149042/177127-4.html)
|
|
- [ ] [Using Hash Tables (video)](https://www.lynda.com/Developer-Programming-Foundations-tutorials/Using-hash-tables/149042/177127-4.html)
|
|
- [ ] [Supporting Hashing (video)](https://www.lynda.com/Developer-Programming-Foundations-tutorials/Supporting-hashing/149042/177128-4.html)
|
|
- [ ] [Supporting Hashing (video)](https://www.lynda.com/Developer-Programming-Foundations-tutorials/Supporting-hashing/149042/177128-4.html)
|
|
@@ -691,32 +691,32 @@ Google не возьмёт тебя на работу.
|
|
- [ ] [Core Hash Tables (video)](https://www.coursera.org/learn/data-structures-optimizing-performance/lecture/m7UuP/core-hash-tables)
|
|
- [ ] [Core Hash Tables (video)](https://www.coursera.org/learn/data-structures-optimizing-performance/lecture/m7UuP/core-hash-tables)
|
|
- [ ] [Data Structures (video)](https://www.coursera.org/learn/data-structures/home/week/3)
|
|
- [ ] [Data Structures (video)](https://www.coursera.org/learn/data-structures/home/week/3)
|
|
- [ ] [Phone Book Problem (video)](https://www.coursera.org/learn/data-structures/lecture/NYZZP/phone-book-problem)
|
|
- [ ] [Phone Book Problem (video)](https://www.coursera.org/learn/data-structures/lecture/NYZZP/phone-book-problem)
|
|
- - [ ] distributed hash tables:
|
|
|
|
|
|
+ - [ ] распределенные хеш-таблицы:
|
|
- [Instant Uploads And Storage Optimization In Dropbox (video)](https://www.coursera.org/learn/data-structures/lecture/DvaIb/instant-uploads-and-storage-optimization-in-dropbox)
|
|
- [Instant Uploads And Storage Optimization In Dropbox (video)](https://www.coursera.org/learn/data-structures/lecture/DvaIb/instant-uploads-and-storage-optimization-in-dropbox)
|
|
- [Distributed Hash Tables (video)](https://www.coursera.org/learn/data-structures/lecture/tvH8H/distributed-hash-tables)
|
|
- [Distributed Hash Tables (video)](https://www.coursera.org/learn/data-structures/lecture/tvH8H/distributed-hash-tables)
|
|
|
|
|
|
- - [ ] implement with array using linear probing
|
|
|
|
- - hash(k, m) - m is size of hash table
|
|
|
|
- - add(key, value) - if key already exists, update value
|
|
|
|
|
|
+ - [ ] реализация с помощью массива и приминением linear probing
|
|
|
|
+ - hash(k, m) - m размер хеш-таблицы
|
|
|
|
+ - add(key, value) - если ключ уже существует обновляем значение
|
|
- exists(key)
|
|
- exists(key)
|
|
- get(key)
|
|
- get(key)
|
|
- remove(key)
|
|
- remove(key)
|
|
|
|
|
|
-## More Knowledge
|
|
|
|
|
|
+## Больше знаний
|
|
|
|
|
|
-- ### Binary search
|
|
|
|
|
|
+- ### Бинарный поиск
|
|
- [ ] [Binary Search (video)](https://www.youtube.com/watch?v=D5SrAga1pno)
|
|
- [ ] [Binary Search (video)](https://www.youtube.com/watch?v=D5SrAga1pno)
|
|
- [ ] [Binary Search (video)](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search)
|
|
- [ ] [Binary Search (video)](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search)
|
|
- [ ] [detail](https://www.topcoder.com/community/data-science/data-science-tutorials/binary-search/)
|
|
- [ ] [detail](https://www.topcoder.com/community/data-science/data-science-tutorials/binary-search/)
|
|
- - [ ] Implement:
|
|
|
|
- - binary search (on sorted array of integers)
|
|
|
|
- - binary search using recursion
|
|
|
|
|
|
+ - [ ] Реализация:
|
|
|
|
+ - бинарный поиск (на отсортированном числовом массиве)
|
|
|
|
+ - бинарный поиск с использованием рекурсии
|
|
|
|
|
|
-- ### Bitwise operations
|
|
|
|
|
|
+- ### Побитовые операции
|
|
- [ ] [Bits cheat sheet](https://github.com/jwasham/google-interview-university/blob/master/extras/cheat%20sheets/bits-cheat-cheet.pdf) - you should know many of the powers of 2 from (2^1 to 2^16 and 2^32)
|
|
- [ ] [Bits cheat sheet](https://github.com/jwasham/google-interview-university/blob/master/extras/cheat%20sheets/bits-cheat-cheet.pdf) - you should know many of the powers of 2 from (2^1 to 2^16 and 2^32)
|
|
- - [ ] Get a really good understanding of manipulating bits with: &, |, ^, ~, >>, <<
|
|
|
|
|
|
+ - [ ] Даст отличное понимание манипуляции битами с помощью: &, |, ^, ~, >>, <<
|
|
- [ ] [words](https://en.wikipedia.org/wiki/Word_(computer_architecture))
|
|
- [ ] [words](https://en.wikipedia.org/wiki/Word_(computer_architecture))
|
|
- - [ ] Good intro:
|
|
|
|
|
|
+ - [ ] Хорошее введение:
|
|
[Bit Manipulation (video)](https://www.youtube.com/watch?v=7jkIUgLC29I)
|
|
[Bit Manipulation (video)](https://www.youtube.com/watch?v=7jkIUgLC29I)
|
|
- [ ] [C Programming Tutorial 2-10: Bitwise Operators (video)](https://www.youtube.com/watch?v=d0AwjSpNXR0)
|
|
- [ ] [C Programming Tutorial 2-10: Bitwise Operators (video)](https://www.youtube.com/watch?v=d0AwjSpNXR0)
|
|
- [ ] [Bit Manipulation](https://en.wikipedia.org/wiki/Bit_manipulation)
|
|
- [ ] [Bit Manipulation](https://en.wikipedia.org/wiki/Bit_manipulation)
|
|
@@ -724,19 +724,19 @@ Google не возьмёт тебя на работу.
|
|
- [ ] [Bithacks](https://graphics.stanford.edu/~seander/bithacks.html)
|
|
- [ ] [Bithacks](https://graphics.stanford.edu/~seander/bithacks.html)
|
|
- [ ] [The Bit Twiddler](http://bits.stephan-brumme.com/)
|
|
- [ ] [The Bit Twiddler](http://bits.stephan-brumme.com/)
|
|
- [ ] [The Bit Twiddler Interactive](http://bits.stephan-brumme.com/interactive.html)
|
|
- [ ] [The Bit Twiddler Interactive](http://bits.stephan-brumme.com/interactive.html)
|
|
- - [ ] 2s and 1s complement
|
|
|
|
|
|
+ - [ ] 2s и 1s дополнения:
|
|
- [Binary: Plusses & Minuses (Why We Use Two's Complement) (video)](https://www.youtube.com/watch?v=lKTsv6iVxV4)
|
|
- [Binary: Plusses & Minuses (Why We Use Two's Complement) (video)](https://www.youtube.com/watch?v=lKTsv6iVxV4)
|
|
- [1s Complement](https://en.wikipedia.org/wiki/Ones%27_complement)
|
|
- [1s Complement](https://en.wikipedia.org/wiki/Ones%27_complement)
|
|
- [2s Complement](https://en.wikipedia.org/wiki/Two%27s_complement)
|
|
- [2s Complement](https://en.wikipedia.org/wiki/Two%27s_complement)
|
|
- - [ ] count set bits
|
|
|
|
|
|
+ - [ ] счетчик битов:
|
|
- [4 ways to count bits in a byte (video)](https://youtu.be/Hzuzo9NJrlc)
|
|
- [4 ways to count bits in a byte (video)](https://youtu.be/Hzuzo9NJrlc)
|
|
- [Count Bits](https://graphics.stanford.edu/~seander/bithacks.html#CountBitsSetKernighan)
|
|
- [Count Bits](https://graphics.stanford.edu/~seander/bithacks.html#CountBitsSetKernighan)
|
|
- [How To Count The Number Of Set Bits In a 32 Bit Integer](http://stackoverflow.com/questions/109023/how-to-count-the-number-of-set-bits-in-a-32-bit-integer)
|
|
- [How To Count The Number Of Set Bits In a 32 Bit Integer](http://stackoverflow.com/questions/109023/how-to-count-the-number-of-set-bits-in-a-32-bit-integer)
|
|
- - [ ] round to next power of 2:
|
|
|
|
|
|
+ - [ ] округление до следующей степени 2:
|
|
- [Round Up To Next Power Of Two](http://bits.stephan-brumme.com/roundUpToNextPowerOfTwo.html)
|
|
- [Round Up To Next Power Of Two](http://bits.stephan-brumme.com/roundUpToNextPowerOfTwo.html)
|
|
- - [ ] swap values:
|
|
|
|
|
|
+ - [ ] обмен значениями:
|
|
- [Swap](http://bits.stephan-brumme.com/swap.html)
|
|
- [Swap](http://bits.stephan-brumme.com/swap.html)
|
|
- - [ ] absolute value:
|
|
|
|
|
|
+ - [ ] абсолютные значения:
|
|
- [Absolute Integer](http://bits.stephan-brumme.com/absInteger.html)
|
|
- [Absolute Integer](http://bits.stephan-brumme.com/absInteger.html)
|
|
|
|
|
|
## Trees
|
|
## Trees
|