Kezdőoldal » Számítástechnika » Programozás » Bináris fa tárolása?

Bináris fa tárolása?

Figyelt kérdés

Biráris fa adatait szeretném eltárolni a lehető leggazdaságosabban, természetesen úgy, hogy a fa az állományból visszaállítható legyen.

A tárolandó adatok tipusa byte.


Előre is köszönöm.



2020. júl. 1. 20:07
1 2 3 4 5
 31/43 A kérdező kommentje:
28, ez jó ötlet. Mindjárt megcsinálom, legalább előttem is világossá válik egy s más. Kis türelmedet kérem.
2020. júl. 2. 15:04
 32/43 anonim ***** válasza:

Értettem amit írtál, pont úgy ahogy most újra leírtad... a MAP a kérdés, hogy hogy néz ki egy 14 csúcsú 5 szintű fára.

Ezt kétlem, hogy kihozod 14 vagy 16 bitből... és ez még csak az az eset mikor 1 szinttel lóg túl valamelyik ág.

2020. júl. 2. 15:09
Hasznos számodra ez a válasz?
 33/43 anonim ***** válasza:
Az 5-ször elküldjük ugyanazt helyett azért sokkal jobb módot is lehet találni ami nagyobb hibadetektálási és javítási rátával rendelkezik... itt tudnál nagyon sokat spórolni ez alapján.
2020. júl. 2. 15:10
Hasznos számodra ez a válasz?
 34/43 A kérdező kommentje:

Az a fontos, hogy ne kerüljön sokba.

z80 CPU, 16 KB RAM, 0 KB ROM és egy 300 Ft-os RF adó lesz az egész, szünetmentes tápról járatva.

2020. júl. 2. 15:24
 35/43 anonim ***** válasza:
Hát egy jobb hibajavító algoritmus ingyen van:)
2020. júl. 2. 16:00
Hasznos számodra ez a válasz?
 36/43 A kérdező kommentje:

Na, itt van, ha el nem baxtam valamit:


[link]


és a tartalom:


A fa csúcsainak száma tíz. Az utolsó tag a MAP, a szinteket vessző tagolja.


[10], [5,11,2,3,9,4,12,8,13,1], [1,11,1100,10110000,11000000 00000000]


Mint fentebb, csak a MAP immár nem szintenként, hanem bájtonként tagolva és kiegészítve egy 0-val (hogy a 8 bit egy bájtot alkosson)


[10], [5,11,2,3,9,4,12,8,13,1], [11111001 01100001 10000000 0000000"0"]


A MAP az én elképzelésemben:


[10], [5,11,2,3,9,4,12,8,13,1], [1-11-1100-(JS)-1011-11 0]


A MAP a végén 2 db nullával bájtra kerekítve. Ha a gyökérelem bitjét kihagynánk, akkor sem nyernénk az ügyön. Legalábbis ebben az esetben.


[10], [5,11,2,3,9,4,12,8,13,1], [11111001 011110"00"]

2020. júl. 2. 16:03
 37/43 A kérdező kommentje:
Az algoritmus ingyen van, de a full duplex wireless cucc pénzbe kerül.
2020. júl. 2. 16:04
 38/43 anonim ***** válasza:

Tehát a 20 extra bit helyett 24 lett.


Mért kéne full duplex wireless cucc? Én csak azt mondom, hogy az 5x-ös elküldés helyett sokkal kevesebb bitből pont ugynazt az eredményt el lehetne érni. Pont ugyanúgy egyirányú küldéssel.

2020. júl. 2. 23:16
Hasznos számodra ez a válasz?
 39/43 anonim ***** válasza:

Egy lehetőség a fenti példára. (Lehet, hogy már írták, bocsi.)

A lényeg: [érték, gyerekek száma], ... mindezt mélységi bejárás szerint, megfelelő rekurzív függvénnyel gyorsan, egyértelműen visszafejthető.

[5,2],[11,2],[3,1],[4,2],[13,0],[1,0],[9,2],[12,0],[8,0],[2,0]

2020. júl. 3. 15:04
Hasznos számodra ez a válasz?
 40/43 anonim ***** válasza:

Az [érték, gyerekek száma] nem megfelelő, mert akkor ne mlehet tudni, hogy ha 1 gyerek van az bal vagy jobb oldali.


Egyébként igen, erről már volt szó.. 2 bit kell minden csúcshoz, hogy melyik gyerek létezik. Ez kb ugyanaz mint a gyerekek száma, csak így benne van az is, hogy melyik gyerek:)... és 0,1,2 helyett 0,1 (pl. bal gyerek),2 (jobb gyerek),3 (mindkettő) értékeket vehet fel:)

2020. júl. 3. 15:38
Hasznos számodra ez a válasz?
1 2 3 4 5

További kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!