algorithms(rank): initialize chapter and add intro

Signed-off-by: Matej Focko <mfocko@redhat.com>
Signed-off-by: Matej Focko <me@mfocko.xyz>
This commit is contained in:
Matej Focko 2023-02-05 14:11:48 +01:00 committed by Matej Focko
parent 760f36589b
commit a9f9205805
Signed by: mfocko
GPG key ID: 7C47D46246790496
2 changed files with 38 additions and 0 deletions

View file

@ -0,0 +1,32 @@
---
title: Introduction
description: |
Summing up the contents of the „Rank-Balanced Trees“ chapter.
tags:
- balanced trees
---
Data structures have become a regular part of the essential toolbox for
problem-solving. In many cases, they also help to improve the existing algorithm's
performance, e.g. using a priority queue in _Dijkstra's algorithm for the shortest_
_path_. We will mainly discuss the implementation of a set.
Currently, the most commonly used implementations of sets use hash tables, but we
will talk about another common alternative, implementation via self-balancing
search trees. Compared to a hash table, they provide consistent time complexity,
but at the cost of a requirement for ordering on the elements. The most implemented
self-balancing binary tree is a _red-black tree_, as described by _Guibas and_
_Sedgewick_[^1]. Among other alternatives, we can find (non-binary) _B-tree_[^2]
and _AVL tree_[^3].
We will start by discussing the properties of the AVL tree[^3], then we will
follow up on that with a definition of a _rank-balanced tree_, including
implementation of algorithms for implementing commonly known trees such as red-black
tree and AVL tree using the given representation. Afterwards we will delve into
the details of the _Weak AVL (WAVL) tree_[^4] that has relaxed requirements
compared to the AVL tree.
[^1]: GUIBAS, Leo J.; SEDGEWICK, Robert. A dichromatic framework for balanced trees. In: _19th Annual Symposium on Foundations of Computer Science (sfcs 1978)_. 1978, pp. 821. Available from doi: [10.1109/SFCS.1978.3](https://doi.org/10.1109/SFCS.1978.3).
[^2]: BAYER, R.; MCCREIGHT, E. Organization and Maintenance of Large Ordered Indices. In: _Proceedings of the 1970 ACM SIGFIDET (Now SIGMOD) Workshop on Data Description, Access and Control_. Houston, Texas: Association for Computing Machinery, 1970, pp. 107141. SIGFIDET 70. isbn 9781450379410. Available from doi: [10.1145/1734663.1734671](https://doi.org/10.1145/1734663.1734671).
[^3]: ADELSON-VELSKIJ, Georgij; LANDIS, Evgenij. An algorithm for the organization of information. _Doklady Akad. Nauk SSSR_. 1962, vol. 146, pp. 263266.
[^4]: HAEUPLER, Bernhard; SEN, Siddhartha; TARJAN, Robert E. Rank-Balanced Trees. _ACM Trans. Algorithms_. 2015, vol. 11, no. 4. issn 1549-6325. Available from doi: [10.1145/2689412](https://doi.org/10.1145/2689412).

View file

@ -0,0 +1,6 @@
label: Rank-Balanced Trees
position: 99
link:
type: generated-index
description: |
Web version of my bachelor thesis on rank-balanced trees.