ۋاقىت ئالدىراڭغۇ ساقلاپ تۇرمايدۇ،
يىللار ۋاقىتنىڭ ئەڭ چوڭ يورغىسى.
ئاققان سۇلار، ئاتقان تاڭلار قايتىلانمايدۇ،
يورغا يىللار ئۆمۈرنىڭ يامان ئوغرىسى.
- Running time complexity: O(V + E)
- Memory complexity is not good as we have to sort lots of references. That is why DFS is usually preferred.
- But it constructs a shortest path: Dijkstra algorithm does a BFS if all the edge weights are equal to one.
- We have an empty queue at the beginning and we keep checking whether we have visited the given node or not. Keep iterating until queue is not empty.
Typical ones are: O(n^2) or O(nlogn) or O(n), for more check Big-O Cheatsheet.
Strictly an in-place sort needs only o(1) memory beyond the items being sorted.
So an in place algorithm does not need any extra memory.
Some sorting algorithms are implemented in a recursive manner, especially the divide and conquer ones. Such as merge sort and quick sort.
Stable sorting algorithms maintain the relative order of records with equal values.
- It is an abstract data type such as stack or queue
- But every item has an additional property: a priority value
- Priority Queue is usually implemented with heaps, but it can be implemented with self balancing trees as well
- The highest priority element is retrieved first, no FIFO structure here
- Operation: InsertWithPriority(data, priority), getHighestPriorityElement(), peek()
The conditional 〜ば form changes differently in these word types: 『動詞』(verb)、『い形容詞』(i adjective)、『な形容詞』(na adjective)、そして『名詞』(noun)。
And 『動詞』(verb) will include three different categories: u verb, ru verb, and exceptions.