Translated everything to line 795

This commit is contained in:
Dimo Dimchev 2021-12-27 13:30:39 +02:00
parent 15ca134004
commit d7feaeccfb

View File

@ -689,3 +689,53 @@
- [Swap](https://bits.stephan-brumme.com/swap.html)
- [ ] Абсолютна стойност:
- [Absolute Integer](https://bits.stephan-brumme.com/absInteger.html)
## Дървета
- ### Дървета - бележки & основи
- [ ] [Серия: Дървета (клип)](https://www.coursera.org/lecture/data-structures/trees-95qda)
- основна структура на дървото
- обхождане
- алгоритми за манипулиране
- [ ] [BFS(обхождане в ширина) and DFS(обхождане в дълбочина) (клип)](https://www.youtube.com/watch?v=uWL6FJhq5fM)
- бележки за BFS:
- level order (BFS, using queue)
- времева сложност O(n)
- пространствена сложност: в най-добрия случай: O(1), в най-лошия случай: O(n/2)=O(n)
- бележки за DFS:
- времева сложност: O(n)
- пространствена сложност:
в най-добрия случай: O(log n) - средна височина на дървото
в най-добрия случай: O(n)
- inorder (DFS: ляво, self, дясно)
- postorder (DFS: ляво, дясно, self)
- preorder (DFS: self, ляво, дясно)
- ### Дървета за двоично търсене: BSTs
- [ ] [Преговор над двоични дървета за търсене (клип)](https://www.youtube.com/watch?v=x6At0nzX92o&index=1&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6)
- [ ] [Въведение (клип)](https://www.coursera.org/learn/data-structures/lecture/E7cXP/introduction)
- [ ] [MIT (клип)](https://www.youtube.com/watch?v=9Jry5-82I68)
- C/C++:
- [ ] [Двоично дърво за търсене - имплементация в C/C++ (клип)](https://www.youtube.com/watch?v=COZK7NATh4k&list=PL2_aWCzGMAwI3W_JlcBbtYTwiQSsOTa6P&index=28)
- [ ] [BST имплементация - memory allocation in stack and heap (клип)](https://www.youtube.com/watch?v=hWokyBoo0aI&list=PL2_aWCzGMAwI3W_JlcBbtYTwiQSsOTa6P&index=29)
- [ ] [Намиране на мин. и макс. елемент в двоично дърво за търсенея (клип)](https://www.youtube.com/watch?v=Ut90klNN264&index=30&list=PL2_aWCzGMAwI3W_JlcBbtYTwiQSsOTa6P)
- [ ] [Намиране на височината на двоично дърво (клип)](https://www.youtube.com/watch?v=_pnqMz5nrRs&list=PL2_aWCzGMAwI3W_JlcBbtYTwiQSsOTa6P&index=31)
- [ ] [Обхождане на двоично дърво - стратегии за обхождане по ширина и по дълбочина (клип)](https://www.youtube.com/watch?v=9RHO6jU--GU&list=PL2_aWCzGMAwI3W_JlcBbtYTwiQSsOTa6P&index=32)
- [ ] [Двоично дърво: преминаване на порядъка на ниво (клип)](https://www.youtube.com/watch?v=86g8jAQug04&index=33&list=PL2_aWCzGMAwI3W_JlcBbtYTwiQSsOTa6P)
- [ ] [Обхождане на двоично дърво: Preorder, Inorder, Postorder (клип)](https://www.youtube.com/watch?v=gm8DUJJhmY4&index=34&list=PL2_aWCzGMAwI3W_JlcBbtYTwiQSsOTa6P)
- [ ] [Проверка дали двоично дърво е двоично дърво за търсене (клип)](https://www.youtube.com/watch?v=yEwSGhSsT0U&index=35&list=PL2_aWCzGMAwI3W_JlcBbtYTwiQSsOTa6P)
- [ ] [Изтриване на възел от двоично дърво за търсене (клип)](https://www.youtube.com/watch?v=gcULXE7ViZw&list=PL2_aWCzGMAwI3W_JlcBbtYTwiQSsOTa6P&index=36)
- [ ] [Редовен наследник в двоично дърво (клип)](https://www.youtube.com/watch?v=5cPbNCrdotA&index=37&list=PL2_aWCzGMAwI3W_JlcBbtYTwiQSsOTa6P)
- [ ] Имплементирайте:
- [ ] insert // вкарване на стойност в дървото
- [ ] get_node_count // вземане на бройката на запазените стойности
- [ ] print_values // принтира стойностите в дървото от най-малкия до най-големия
- [ ] delete_tree
- [ ] is_in_tree // връща true ако дадената стойност съществува в дървото
- [ ] get_height // returns the height in nodes (single node's height is 1)
- [ ] get_min // връща най-малката стойност, съхранявана в дървото
- [ ] get_max // връща най-голямата стойност, съхранявана в дървото
- [ ] is_binary_search_tree
- [ ] delete_value
- [ ] get_successor // връща следващата най-голяма стойност след дадената, -1 ако такава не съществува