English
Related papers

Related papers: Building a Balanced k-d Tree in O(kn log n) Time

200 papers

The original description of the k-d tree recognized that rebalancing techniques, such as are used to build an AVL tree or a red-black tree, are not applicable to a k-d tree. Hence, in order to build a balanced k-d tree, it is necessary to…

Data Structures and Algorithms · Computer Science 2020-11-03 Russell A. Brown

The original description of the k-d tree recognized that rebalancing techniques, such as used to build an AVL tree or a red-black tree, are not applicable to a k-d tree. Hence, in order to build a balanced k-d tree, it is necessary to find…

Data Structures and Algorithms · Computer Science 2025-12-30 Russell A. Brown

The original description of the k-d tree recognized that rebalancing techniques, used for building an AVL or red-black tree, are not applicable to a k-d tree, because these techniques involve cyclic exchange of tree nodes that violates the…

Data Structures and Algorithms · Computer Science 2026-05-27 Russell A. Brown

We present an algorithm that allows for building left-balanced and complete k-d trees over k-dimensional points in a trivially parallel and GPU friendly way. Our algorithm requires exactly one int per data point as temporary storage, and…

Data Structures and Algorithms · Computer Science 2023-04-06 Ingo Wald

Data structures known as $k$-d trees have numerous applications in scientific computing, particularly in areas of modern statistics and data science such as range search in decision trees, clustering, nearest neighbors search, local…

Data Structures and Algorithms · Computer Science 2022-01-21 Aritra Chakravorty , William S. Cleveland , Patrick J. Wolfe

We suggest a new non-recursive algorithm for constructing a binary search tree given an array of numbers. The algorithm has $O(N)$ time and $O(1)$ memory complexity if the given array of $N$ numbers is sorted. The resulting tree is of…

Data Structures and Algorithms · Computer Science 2022-07-20 Pavel S. Ruzankin

The $k$d-tree is one of the most widely used data structures to manage multi-dimensional data. Due to the ever-growing data volume, it is imperative to consider parallelism in $k$d-trees. However, we observed challenges in existing parallel…

Data Structures and Algorithms · Computer Science 2025-01-08 Ziyang Men , Zheqi Shen , Yan Gu , Yihan Sun

k-means is a widely used clustering algorithm, but for $k$ clusters and a dataset size of $N$, each iteration of Lloyd's algorithm costs $O(kN)$ time. Although there are existing techniques to accelerate single Lloyd iterations, none of…

Data Structures and Algorithms · Computer Science 2016-01-18 Ryan R. Curtin

We consider a classical k-center problem in trees. Let T be a tree of n vertices and every vertex has a nonnegative weight. The problem is to find k centers on the edges of T such that the maximum weighted distance from all vertices to…

Data Structures and Algorithms · Computer Science 2018-03-07 Haitao Wang , Jingru Zhang

Existing parallel algorithms for wavelet tree construction have a work complexity of $O(n\log\sigma)$. This paper presents parallel algorithms for the problem with improved work complexity. Our first algorithm is based on parallel integer…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-01-17 Julian Shun

We present an algorithm that allows for find-closest-point and kNN-style traversals of left-balanced k-d trees, without the need for either recursion or software-managed stacks; instead using only current and last previously traversed node…

Data Structures and Algorithms · Computer Science 2022-11-04 Ingo Wald

We present a set of parallel algorithms for computing exact k-nearest neighbors in low dimensions. Many k-nearest neighbor algorithms use either a kd-tree or the Morton ordering of the point set; our algorithms combine these approaches…

Data Structures and Algorithms · Computer Science 2021-11-09 Magdalen Dobson , Guy Blelloch

The k-d tree is a classic binary space-partitioning tree used to organize points in k-dimensional space. While used in computational geometry and graphics, the data structure has a long history of application in nearest neighbor search. The…

Logic in Computer Science · Computer Science 2023-11-21 Nadeem Abdul Hamid

The wavelet tree has become a very useful data structure to efficiently represent and query large volumes of data in many different domains, from bioinformatics to geographic information systems. One problem with wavelet trees is their…

Data Structures and Algorithms · Computer Science 2016-10-20 José Fuentes-Sepúlveda , Erick Elejalde , Leo Ferres , Diego Seco

Containment-based trees encompass various handy structures such as B+-trees, R-trees and M-trees. They are widely used to build data indexes, range-queryable overlays, publish/subscribe systems both in centralized and distributed contexts.…

Distributed, Parallel, and Cluster Computing · Computer Science 2012-12-17 Evangelos Bampas , Anissa Lamani , Franck Petit , Mathieu Valero

In this paper, we revisit the problem of indexing multi-dimensional data in memory for the efficient support of multi-dimensional range queries and nearest neighbor queries. This is a classic problem in main-memory databases, where there is…

Databases · Computer Science 2026-05-06 Achilleas Michalopoulos , Dimitrios Tsitsigkos , Nikos Mamoulis

In this paper we study the question of whether or not a static search tree should ever be unbalanced. We present several methods to restructure an unbalanced k-ary search tree $T$ into a new tree $R$ that preserves many of the properties of…

Data Structures and Algorithms · Computer Science 2010-06-21 Prosenjit Bose , Karim Douïeb

K-Nearest Neighbors (KNN) search is a fundamental algorithm in artificial intelligence software with applications in robotics, and autonomous vehicles. These wide-ranging applications utilize KNN either directly for simple classification or…

Software Engineering · Computer Science 2021-06-08 Aryan Naim , Joseph Bowkett , Sisir Karumanchi , Peyman Tavallali , Brett Kennedy

We consider the problem of finding k centers for n weighted points on a real line. This (weighted) k-center problem was solved in O(n log n) time previously by using Cole's parametric search and other complicated approaches. In this paper,…

Computational Geometry · Computer Science 2014-03-07 Danny Z. Chen , Jian Li , Haitao Wang

Two kinds of approximation algorithms exist for the k-BALANCED PARTITIONING problem: those that are fast but compute unsatisfying approximation ratios, and those that guarantee high quality ratios but are slow. In this paper we prove that…

Computational Complexity · Computer Science 2019-04-29 Andreas Emil Feldmann
‹ Prev 1 2 3 10 Next ›