Aleatoare binar de căutare copac

voturi
1

Am un BST în cazul în care introduc cheile de la 1 ... n mod aleatoriu (fiecare permutare se face cu 1 / n! probabilitate) . întrebarea mea este motivul pentru care copacii care rezultă nu sunt uniforme , chiar dacă permutarea sunt uniforme ?

Întrebat 21/03/2011 la 22:33
sursa de către utilizator
În alte limbi...                            


2 răspunsuri

voturi
3

O mulțime depinde de punerea în aplicare a arborelui. Este auto-echilibrare? Luați în considerare arborii simpli 1 2 3 și 3 2 1

Very simple tree:
add 1

1

add 2


1
 \
  2

add 3

 1
  \
   2
    \
     3

apoi 3 2 1

se adaugă 3

3

add 2


  3
 /
2

add 1

     3
    /
   2
  / 
 1

Acum, face 2 3 1

2

2
 \
  3


  2
 / \
1   3
Publicat 21/03/2011 la 22:37
sursa de către utilizator

voturi
1

un arbore binar de căutare nu este doar un copac de căutare uniformă ... un copac este construit în ordinea în care noile valori sunt salvate în ea. astfel cum a arătat deja glowcoder, că uniformitatea de garantare doesnt ...

având o distribuție uniformă de numere aleatorii nu garantează o ordine a valorilor, care este optim pentru a construi un arbore binar

pentru a avea o căutare minim efort printr-un arbore binar, arborele trebuie să fie reconstrui în mod regulat. Acest lucru se întâmplă de obicei în non-business-ore, în cazul în care un algoritm poate citi întregul copac într-o listă legată și apoi, din această listă, construiește un nou arbore cu o uniformitate optimă

Publicat 21/03/2011 la 22:45
sursa de către utilizator

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more