Approximating Optimal Binary Search Trees.

master
dc.abstract.enThe binary search tree (BST) is one of the most fundamental data structures. It is widely used to store ordered data, allowing for efficient updates and look-ups. A BST for a set of values is a binary tree, in which for every node it holds that each node in its left subtree holds a smaller value and each node in its right subtree holds a higher value. Usually we want the BST to be of O(log n) height to ensure O(log n) complexity of basic operations. However, if we knew how often each value in the BST is queried, we could create a tree that allows for sublogarithmic operations. In the Optimal Binary Search Tree problem, we are given probabilities of accessing each value in the BST and every interval between these values. The objective is to construct a tree that minimizes the expected access time. In this thesis, we study the approximation aspect of the OBST problem. We introduce a new O(n log n) time algorithm with approximation ratio 3/2. This algorithm also produces a tree with the same cost upper bound as the best previously known algorithms. Additionally, we give partial results for the (1+ε)-approximation problem. We show that for inputs with great enough entropy, the existing approximation algorithms are already good enough. For inputs with lower entropy we show how this property can be used to obtain a good approximation, if we had subquadratic algorithms for few other problems in this space.pl
dc.abstract.plBinarne drzewo poszukiwań (BST), to jedna z podstawowych struktur danych. Służy do przechowywania posortowanych danych, w sposób pozwalający na wykonywanie zapytań w optymalnym czasie. Struktura drzewa jest następująca, każdy wierzchołek w swoim lewym poddrzewie ma wartości mniejsze, a w prawym poddrzewie wartości większe od własnej wartości. Zazwyczaj BST mają wysokość O(log n), co zezwala na wykonywanie podstawowych operacji w czasie O(log n). Zakładając, że wiemy, jak często każda wartość w drzewie jest wyszukiwana, możemy skonstruować drzewo operujące efektywniej. W problemie Optymalnego Binarnego Drzewa Poszukiwań na wejściu otrzymujemy rozkład prawdopodobieństwa wyszukania każdej wartości z naszego BST oraz każdego przedziału wartości, które nie należą do BST. Celem jest znalezienie drzewa, które minimalizuje oczekiwany czas wyszukiwania. W naszej pracy badamy problem aproksymacji Optymalnego Binarnego Drzewa Poszukiwań. Prezentujemy nowy algorytm ze współczynnikiem aproksymacji 3/2 o złożoności czasowej O(n log n). Dodatkowo prezentujemy częściowe wyniki z zakresu problemu (1+ε)-aproksymacji. Dowodzimy, że dla ciągów wejściowych z odpowiednio dużą entropią, aktualne algorytmy są już dostatecznie dobre. Dla ciągów z niską entropią pokazujemy, jak ta własność może być użyta w celu uzyskania dobrej aproksymacji.pl
dc.affiliationWydział Matematyki i Informatykipl
dc.areaobszar nauk ścisłychpl
dc.contributor.advisorDuraj, Lech - 133967 pl
dc.contributor.authorBłoniarz, Bartłomiej - USOS274021 pl
dc.contributor.departmentbycodeUJK/WMI2pl
dc.contributor.reviewerDuraj, Lech - 133967 pl
dc.contributor.reviewerWalczak, Bartosz - 114113 pl
dc.date.accessioned2024-10-16T06:30:16Z
dc.date.available2024-10-16T06:30:16Z
dc.date.submitted2024-10-09pl
dc.fieldofstudyinformatyka analitycznapl
dc.identifier.apddiploma-178749-274021pl
dc.identifier.urihttps://ruj.uj.edu.pl/handle/item/452310
dc.languageengpl
dc.subject.enBinary Search Tree, Optimal Binary Search Tree problem, Optimal Alphabetic Tree problem, approximation, algorithmspl
dc.subject.plBinarne Drzewo Poszukiwań, problem Optymalnego Binarnego Drzewa Poszukiwań, problem Optymalnego Alfabetycznego Drzewa, aproksymacja, algorytmypl
dc.titleApproximating Optimal Binary Search Trees.pl
dc.title.alternativeAproksymacja Optymalnych Binarnych Drzew Poszukiwańpl
dc.typemasterpl
dspace.entity.typePublication
dc.abstract.enpl
The binary search tree (BST) is one of the most fundamental data structures. It is widely used to store ordered data, allowing for efficient updates and look-ups. A BST for a set of values is a binary tree, in which for every node it holds that each node in its left subtree holds a smaller value and each node in its right subtree holds a higher value. Usually we want the BST to be of O(log n) height to ensure O(log n) complexity of basic operations. However, if we knew how often each value in the BST is queried, we could create a tree that allows for sublogarithmic operations. In the Optimal Binary Search Tree problem, we are given probabilities of accessing each value in the BST and every interval between these values. The objective is to construct a tree that minimizes the expected access time. In this thesis, we study the approximation aspect of the OBST problem. We introduce a new O(n log n) time algorithm with approximation ratio 3/2. This algorithm also produces a tree with the same cost upper bound as the best previously known algorithms. Additionally, we give partial results for the (1+ε)-approximation problem. We show that for inputs with great enough entropy, the existing approximation algorithms are already good enough. For inputs with lower entropy we show how this property can be used to obtain a good approximation, if we had subquadratic algorithms for few other problems in this space.
dc.abstract.plpl
Binarne drzewo poszukiwań (BST), to jedna z podstawowych struktur danych. Służy do przechowywania posortowanych danych, w sposób pozwalający na wykonywanie zapytań w optymalnym czasie. Struktura drzewa jest następująca, każdy wierzchołek w swoim lewym poddrzewie ma wartości mniejsze, a w prawym poddrzewie wartości większe od własnej wartości. Zazwyczaj BST mają wysokość O(log n), co zezwala na wykonywanie podstawowych operacji w czasie O(log n). Zakładając, że wiemy, jak często każda wartość w drzewie jest wyszukiwana, możemy skonstruować drzewo operujące efektywniej. W problemie Optymalnego Binarnego Drzewa Poszukiwań na wejściu otrzymujemy rozkład prawdopodobieństwa wyszukania każdej wartości z naszego BST oraz każdego przedziału wartości, które nie należą do BST. Celem jest znalezienie drzewa, które minimalizuje oczekiwany czas wyszukiwania. W naszej pracy badamy problem aproksymacji Optymalnego Binarnego Drzewa Poszukiwań. Prezentujemy nowy algorytm ze współczynnikiem aproksymacji 3/2 o złożoności czasowej O(n log n). Dodatkowo prezentujemy częściowe wyniki z zakresu problemu (1+ε)-aproksymacji. Dowodzimy, że dla ciągów wejściowych z odpowiednio dużą entropią, aktualne algorytmy są już dostatecznie dobre. Dla ciągów z niską entropią pokazujemy, jak ta własność może być użyta w celu uzyskania dobrej aproksymacji.
dc.affiliationpl
Wydział Matematyki i Informatyki
dc.areapl
obszar nauk ścisłych
dc.contributor.advisorpl
Duraj, Lech - 133967
dc.contributor.authorpl
Błoniarz, Bartłomiej - USOS274021
dc.contributor.departmentbycodepl
UJK/WMI2
dc.contributor.reviewerpl
Duraj, Lech - 133967
dc.contributor.reviewerpl
Walczak, Bartosz - 114113
dc.date.accessioned
2024-10-16T06:30:16Z
dc.date.available
2024-10-16T06:30:16Z
dc.date.submittedpl
2024-10-09
dc.fieldofstudypl
informatyka analityczna
dc.identifier.apdpl
diploma-178749-274021
dc.identifier.uri
https://ruj.uj.edu.pl/handle/item/452310
dc.languagepl
eng
dc.subject.enpl
Binary Search Tree, Optimal Binary Search Tree problem, Optimal Alphabetic Tree problem, approximation, algorithms
dc.subject.plpl
Binarne Drzewo Poszukiwań, problem Optymalnego Binarnego Drzewa Poszukiwań, problem Optymalnego Alfabetycznego Drzewa, aproksymacja, algorytmy
dc.titlepl
Approximating Optimal Binary Search Trees.
dc.title.alternativepl
Aproksymacja Optymalnych Binarnych Drzew Poszukiwań
dc.typepl
master
dspace.entity.type
Publication
Affiliations

* The migration of download and view statistics prior to the date of April 8, 2024 is in progress.

Views
38
Views per month
Views per city
Krakow
5
Champaign
4
Maramag
4
Starogard Gdański
4
Jakarta
3
Katowice
3
Malang
2
Bochnia
1
Brooklyn
1
Butuan
1

No access

No Thumbnail Available
Collections