Computer Science
1. Computer Science
properties
ID: adc765c5-ae57-47f0-b220-6450dbcabebb
CREATED:
:EDGES: – Theory of computation - Wikipedia – Theoretical computer science - Wikipedia
1.2. Error Correction Codes
properties
ID: 08a0e9d0-870f-4e7a-b76c-dbcf4ac10f55
CREATED:
1.3. Thread Pool
properties
ID: 1c09c413-4ece-462a-bdb1-4f306018a3b3
CREATED:
1.4. Data Structure
properties
ID: 956cb941-dd29-4b70-b0f7-53ad71362ed0
CREATED:
1.4.1. Stack
properties
ID: 2b5b4c0a-c4e8-4d76-b71f-240d6707cb02
CREATED:
1.4.2. Heap
properties
ID: e488f62d-462c-42fb-b62c-bf890e26499e
CREATED:
- Fibonacci Heap
properties
ID: 762dd80b-bf45-4daa-b693-2f34f1a61d3f
CREATED:- A collection of trees satisfying the minimum-heap property:
- The key of a child is always greater than or equal to the key of a parent. The minimum element is always at the root of one of the trees.
- used as a min-priority queue
- an abstract data type that provides 3 basic operations: add_with_priority(), decrease_priority() and extract_min().
- typically used to implement the priority queue element of Dijkrsta's algorithm
- While Fibonacci heaps have very good theoretical complexities, in practice, other heap types such as pairing heaps are faster. This is because even in the simplest implementation, Fibonacci heaps require four pointers for each node, other heaps need two or three.
Compared with binomial heaps, the structure of a Fibonacci heap is more flexible. The trees do not have a prescribed shape and in the extreme case the heap can have every element in a separate tree. This flexibility allows some operations to be executed in a lazy manner, postponing the work for later operations. For example, merging heaps is done simply by concatenating the two lists of trees, and operation decrease key sometimes cuts a node from its parent and forms a new tree.
- amortized runtime analysis performed on potential value given by:
φ = t+2m
- where t is the number of trees and m is the number of marked nodes
- Operations
- find-min O(1)
- merge O(1)
- insert O(1)
- delete-min O(log n)
- decrease-key O(k) + c(-k + 4)
- where k is the number of new trees inserted during the series of cascading cuts
Although the total running time of a sequence of operations starting with an empty structure is bounded by the bounds given above, some (very few) operations in the sequence can take very long to complete (in particular, delete-min has linear running time in the worst case). For this reason, Fibonacci heaps and other amortized data structures may not be appropriate for real-time systems.
- [1403.0252] A Back-to-Basics Empirical Study of Priority Queues
- Recent experimental results suggest that the Fibonacci heap is more efficient in practice than most of its later derivatives, including quake heaps, violation heaps, strict Fibonacci heaps, and rank pairing heaps, but less efficient than pairing heaps or array-based heaps.
- A collection of trees satisfying the minimum-heap property:
- Brodal Queue
properties
ID: db309f05-7563-47a6-8205-901e4be3f68a
CREATED:- O(1) for insertion, find-minimum, meld (merge two queues) and decrease-key
- O(log(n)) for delete-minimum and general deletion.
- First heap variant to achieve these bounds without resorting to amortization of operational costs.
1.4.3. Array
properties
ID: 825b2467-a397-4fcc-83b6-c3397e9cc091
CREATED:
1.4.4. Dictionary
properties
ID: 1336d625-e74f-42fd-b23c-292c07f9f029
CREATED:
1.4.5. Hash Table
properties
ID: b0300e61-d29b-4df4-940d-31257bf6a5f6
CREATED:
AKA: Hash Map
1.5. Symbolic Computation
properties
ID: 9c8b77f4-e67b-4470-b2d3-20e6d3807290
CREATED:
1.5.1. Risch algorithm
properties
ID: a316971e-8f63-450e-b2d9-8ad89acaeaca
CREATED:
1.6. Computability Theory
properties
ID: fc02e09e-c2d2-4275-844b-2e104d6b6554
CREATED:
AKA: Recursion Theory
1.7. Information Theory
properties
ID: 60ab765c-7d94-43b8-adb1-fed951e87393
CREATED:
1.8. Theoretical Computer Science
properties
ID: df8b8dc1-5495-46d9-9cf3-7ee6e966f600
CREATED:
1.8.1. Algorithmic Information Theory
properties
ID: 695c0f61-3029-4ec0-a6a5-39a46a8885a2
CREATED:
AKA: AIT
- Kolmogorov Complexity
properties
ID: 602cff40-8e74-4c4f-9baa-2c0d1bf5583f
CREATED:
2. Computer Graphics
properties
ID: c934b053-1f34-4b81-b63a-ccc7cde98b34
CREATED:
2.1. Rasterization
properties
ID: 959cc0bc-9021-465a-94f2-8314cc4ea07c
AKA: Rasterisation
CREATED: