Hollerithsträngar
Hollerithsträngar är en datastruktur för att lagra textsträngar av valfri längd. Den består av- ett antal siffror som kodar det antal tecken som ingår i strängen
- en särskiljare
- tecknen i strängen
Det fina i kråksången är att det lika lätt att hantera korta som långa strängar samtidigt som inga specialtecken måste reserveras.
Exempel
Strängen räksmörgås består av 10 tecken. Om man använder bokstaven H som särskiljare och använder BCD-kodning för att ange 10, kan strängen bli
1 0 H r ä k s m ö r g å s
Skulle strängen istället var trettio miljoner fem tecken lång med vertikalstreck som särskiljare, så är början av strängen
3 0 0 0 0 0 0 5 | r ä k . . .
Konkurrerande metoder
I kontrast till Hollerithsträngar står de två andra vanligaste implementationer för strängar, här namngivna enligt två relativt vanliga programmeringssrpåk som uppför sig som om de använder sig av respektive metod.
- »Pascalsträngar» - här används ett antal bitar för längdfältet följt av tecknen i strängen. Nackdelen här är att man får välja att snåla på utrymmet (vilket ger få bitar i längdfältet, typiskt 8 med en maximal stränglängd på 2^8=256 tecken), får slösa på utrymmet (vilket tillåter långa strängar men på bekostnad av att man garanterat slösar utrymme och exekveringstid vid hantering av stora datadelar även för små strängar) eller får trassla med flera sorters strängar (vilket är jobbigt för programmeraren, dvs leder till fler fel)
- »C-strängar» - här används inget längdfält, istället reserveras ett tecken som strängslut. Detta tecken kan inte ingå i en sträng
Artikeln skriven 2009-01-15 av Learning4sharing
Inga kategorier för denna artikel än...Intresserad av fler artiklar?
Reella talTopologi
Dimension
Konsult
Ssebbe
Attribut
Buzzword
Kollektiv intelligens
Informationssökning