VP-träd ( engelska vantage-point tree ) är ett slags BSP-träd .
Ett VP-träd kan byggas för objekt från ett metriskt utrymme , det vill säga för vilken uppsättning som helst där avståndet mellan två valfria element i denna uppsättning är definierat.
En av punkterna ("referenspunkt") tas från den initiala uppsättningen och "radien" R för denna punkt väljs. De återstående punkterna delas upp i två delmängder - med ett avstånd mindre än R till referenspunkten, och ett avstånd större än R. I var och en av de resulterande delmängderna väljs nästa referenspunkt och en ny radie, och så vidare, tills antalet element i var och en av de återstående delmängderna blir mindre ett visst tröskelvärde.
Referenspunkterna och "radierna" för uppdelningssfärerna väljs så att trädet är så balanserat som möjligt.
Till skillnad från ett KD-träd , som endast är tillämpligt på punkter från , kan ett VP-träd användas för att hitta de närmaste objekten från valfritt metriskt utrymme. Till exempel kan Hamming-avstånd användas som ett mått - då kan VP-trädet användas för att söka efter liknande ord från en ordbok, eller för att söka efter liknande bilder.
Träd (datastruktur) | |
---|---|
Binära träd | |
Självbalanserande binära träd |
|
B-träd | |
prefix träd |
|
Binär uppdelning av utrymme | |
Icke-binära träd |
|
Bryter upp utrymmet |
|
Andra träd |
|
Algoritmer |