Category: 

What Is a Ball Tree?

Article Details
  • Written By: A. Leverkuhn
  • Edited By: Andrew Jones
  • Image By: ビッグアップジャパン
  • Last Modified Date: 01 September 2016
  • Copyright Protected:
    2003-2016
    Conjecture Corporation
  • Print this Article
Free Widgets for your Site/Blog
The U.S. Coast Guard led the evacuation of more than 500,000 people from Lower Manhattan on 11 September 2001.  more...

September 27 ,  1940 :  The World War II Axis powers formed with the signing of the Tripartite Pact.  more...

A ball tree is a specific kind of geometric data structure that can be used in multiple computer programming languages. This item is not a simple drawing of data, but a structure that uses conceptual geometry, which can be understood by computer programs. The ball tree organizes data in various ways that help with analysis, alteration, and eventual uses of this data.

As a specific data structure, the ball tree is a series of "balls" and "nodes." Exerts identify a ball tree as a structure where the internal node, a node within a node, is distinguished by the area including all of its derivative balls. This can be difficult to visualize from reading. Images of ball trees, which are useful in showing just how these structures are set up, reveal a set of circular nodes nested inside one another, with the smaller balls nested in each node.

Ball trees are used in conjunction with other kinds of geometric data structures. These include binary trees, where one element of data can be split into two derivative pieces. Other shapes include leaf balls and other tools for sophisticated modeling of data. As data structures, ball trees have a special utility in computer programming languages like C suite or C++, in which such unseen structures are often used to help programmers handle data. Ball trees are often referred to by “pointers” or labels marking their existence in code.

Ad

For those who use pointers to refer to a ball tree in code, additional syntax establishes how the ball tree is set up and what it would look like. This includes a syntax for a radius for each ball, and other delineations of these “virtual spaces” that effectively build and define the ball tree.

In addition to using diagrams to explore the role and structure of ball trees, these items can also be understood in relation to what developers commonly do to them. A common task with ball tree structures involves “pruning,” where the evocative metaphor shows how changing code is similar to cutting a physical tree or shrub to shape it. Different kinds of queries or commands to extract data can be thought of as the pruning of ball trees. Alterative tasks simply consist of searching for relevant data.

Ad

You might also Like

Recommended

Discuss this Article

Post your comments

Post Anonymously

Login

username
password
forgot password?

Register

username
password
confirm
email