<table cellspacing="0" cellpadding="0" border="0" ><tr><td valign="top" style="font: inherit;">Mie mi se pare mai natural sa aloci alte bucket-uri și consider că adăugarea la sfârșitul listei nu își are rostul. Motive:<br>- Oricum hash-ul se redimensionează. Îl dublezi și creezi noi buckets sau îl înjumătățești și eliberezi memorie.<br>- Ca să folosești aceeași zonă de memorie, să zicem că adaugi la sfârșitul unui nou bucket. Trebuie să îl realoci. Să îl mărești. Trebuie să reții un index unde se termina vechea lista de cuvinte din acel bucket, pentru că va urma să fie parcurs. Apoi, când îi vei redistribui, va trebui să ștergi elementele de la începutul listei, deci să faci deplasări, eventual să eliberezi memorie în surplus.<br>- Nu văd de ce nu e mai eficient din majoritatea aspectelor să aloci o alte liste de cuvinte, și după terminarea procesului de redistribuire, free(vechiul bucket) și modifici
 pointerul cu cel nou.<br><br>--- On <b>Wed, 23/2/11, Victor Carbune <i>&lt;victor.carbune@gmail.com&gt;</i></b> wrote:<br><blockquote style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px;"><br>From: Victor Carbune &lt;victor.carbune@gmail.com&gt;<br>Subject: Re: [so] [SO] [Tema1] General questions<br>To: "Sisteme de Operare" &lt;so@cursuri.cs.pub.ro&gt;<br>Date: Wednesday, 23 February, 2011, 10:57<br><br><div class="plainMail">Salut,<br><br>&gt;&gt;&gt; 2011/2/22 Laura Vasilescu &lt;<a ymailto="mailto:vasilescu.laura@gmail.com" href="/mc/compose?to=vasilescu.laura@gmail.com">vasilescu.laura@gmail.com</a>&gt;:<br>&gt;&gt;&gt; &gt; Tot oarecum de acest aspect:<br>&gt;&gt;&gt; &gt; La redistribuire o să începem parcurgerea de sus în jos (de la bucket<br>&gt;&gt;&gt; &gt; 0) și o să readăugăm cuvintele conform noilor valori hash calculate.<br>&gt;&gt;&gt; &gt; Ce se întâmplă atunci când hash-ul vechi și hash-ul nou
 sunt identice?<br>&gt;&gt;&gt; &gt; 1) cuvântul rămâne pe loc<br>&gt;&gt;&gt; &gt; 2) cuvântul este șters din poziția actuală și adăugat la sfârșitul<br>&gt;&gt;&gt; &gt; listei?<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; Varianta 2, însă îl rog pe Ștefan să confirme.<br>Care e argumentul pentru această operație?<br><br>Mi se pare că doar adaugă complexitate inutilă (dacă e în bucket-ul<br>care trebuie, de ce l-aș mai muta la sfârșitul listei?).<br><br>&gt; Salut,<br>&gt;<br>&gt; La operatiile de resize sunt parcurse toate bucketurile in ordine si<br>&gt; cuvintele sunt adaugate in noul hash in ordinea in care sunt intalnite<br>&gt; in vechiul hash. Nu trebuie pastrate timestampuri.<br><br>Eu bănuiesc că trebuie să refolosim memoria alocată în hash, şi nu să<br>alocăm un "nou hash".<br><br>Victor<br>_______________________________________________<br><a href="http://elf.cs.pub.ro/so/wiki/resurse/lista-discutii"
 target="_blank">http://elf.cs.pub.ro/so/wiki/resurse/lista-discutii</a></div></blockquote></td></tr></table><br>