algoritm - date ierarhice

PEAR, Smarty, ADOdb, OOP, PHP 5, XML, UML, Şabloane de proiectare, PHP-GTK.

Moderatori: coditza, Emil, Moderatori

Avatar utilizator
szerky
Average Member
Mesaje: 130
Membru din: Joi Iul 10, 2008 4:06 am

algoritm - date ierarhice

Mesajde szerky » Mar Noi 10, 2009 11:43 pm

Salut,

Folosesc de ceva timp algoritmul asta pt. date ierarhice.
link : http://articles.sitepoint.com/article/h ... a-database .

Lucram acum la ceva si m-am gandit ... sa vad ce algoritm folositi si voi :-)).

Ideea mi-a venit dupa ce am incercat sa adaug o functionalitate in plus la algoritmul asta.

Pe scurt: am mai fauct un nou camp in `categories` si la fiecare 'ADD' calculez valorile din campul respectiv.

Cu valorile obtinute pot face o afisare BY `field` ca in poza asta : http://sitepointstatic.com/graphics/sitepoint_tree.gif .

Practic e ok numai ca m-am gandit sa mai fac inca un camp pe fiecare nivel si sa pot "plimba" categoriile/subcategoriile.

Ex : in poza de mai sus Fruit si Meat au level_id = 1. Fruit are order_id 1, Meat are order_id 2. Am 2 methode up / down .. cu care schimb order_id.

Afisarea o fac By real_order_id insa eu as vrea sa tina cont si de order_id. Adica de elementele pe care le-am "plimbat" :)).

Un printscreen lamuritor : http://i36.tinypic.com/29mrce8.png .

Dupoa cum se vede Garcea apare ultimul desi are order_id 2 ...


Astept sa vad ce algoritmi folositi voi :D



Scorpse
Junior Member
Mesaje: 49
Membru din: Vin Iul 31, 2009 3:15 pm

Mesajde Scorpse » Joi Noi 12, 2009 10:53 am

Celko.

Exista un anumite implementari ale algoritmului celko de date ierarhice, pentru foarte mult edate (sute de mii, milioane), care are avantajul ca la oricare acitune asupra unui obiect se fac maxim 4 operatii.

Este un arbore cu adancime, si nivel parental stanga respectiv dreapta. Algoritmul se gaseste si pe wikipedia, iar o implementare are si pear.


Înapoi la “PHP Avansat”

Cine este conectat

Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 3 vizitatori