De hovedforskjell mellom Hashtable og Dictionary er at Hashtable er en svakt skrevet datastruktur, så det er mulig å legge til nøkler og verdier av hvilken som helst type mens ordboken er en sterkt skrevet datastruktur, så det er bare mulig å legge til elementene som tilfredsstiller de angitte datatyper for både nøkkel og verdi.
Hashtable og ordbok er to hoveddatastrukturer. De kan begge holde data som nøkkelpar. En Hashtable eller en ordbok kan bare inneholde unike nøkler. Programmereren kan finne eller fjerne en bestemt verdi ved hjelp av tasten. Hashtable er ikke sterkt skrevet. Derfor kan programmereren legge til noe element av nøkkelverdier til Hashtable. På den annen side er ordboken sterkt skrevet. Programmøren bør spesifisere datatyper for tastene og verdiene. Det er ikke mulig å legge til elementer som ikke tilfredsstiller de oppgitte datatyper. For eksempel, hvis ordboken har generisk type
1. Hva er generisk datatype
- Definisjon
2. Hva er Hashtable
- Definisjon, funksjonalitet
3. Hva er ordbok
- Definisjon, funksjonalitet
4. Forskjellen mellom Hashtable og Dictionary
- Sammenligning av nøkkelforskjeller
Ordbok, Hashtable, Datastrukturer
En generisk datatype er en datatype som lar brukeren definere klasser og metoder med plassholdere. Kompilatorer som C # kan erstatte plassholderne med spesifisert datatype på kompileringstidspunktet. Det brukes til å lage generelle klasser og metoder. Når du definerer en generisk klasse, bør programmereren bruke vinkelbeslag (<>). Disse parentesene erklærer en klasse eller metode som generisk type.
En Hashtable er en datastruktur som implementerer en assosiativ array abstrakt datatype, en struktur som kan kartlegge nøkkel til verdier. Det er ikke en generell datatype. Se et stykke kode som følger.
Figur 1: C # program med Hashtable
I det ovennevnte programmet, tall er et objekt av typen Hashtable. Nøkkelverdier par legges til Hashtable. Fra setning 15 til 17 er nøklene av typen int og verdiene er av typen streng. I setning 18 er nøkkelen og verdien strenge. En Hashtable er en ukentlig skrevet datastruktur. Derfor kan programmereren legge til nøkler og verdier av en hvilken som helst type til Hashtable.
Figur 2: HashTable Programutgang
Utgangen av programmet er som ovenfor. Hashtable skriver ikke ut postene i henhold til rekkefølge hvor elementene er lagt til. Derfor opprettholder den ikke den innførte bestillingen.
En ordbok bruker begrepet Hashtable. Det er en generisk datatype. Se underprogrammet nedenfor. navnene er et ordbokstypeobjekt. Det har spesifikke datatyper å lagre for nøkler og verdier. I følge dette programmet defineres de generiske typene som
Figur 3: C # program med ordbok
Alle elementene som er lagt til i ordboken ovenfor, har nøkkel- og verdipar av typen String. Utskrift av nøkkel og verdier til konsollen vil gi en utgang som ligner på figur 4. Henting av elementene fra Ordbok vil skrive ut postene i samme rekkefølge som elementene ble lagt til. Derfor opprettholder den den innførte ordren.
Figur 4: Ordboksprogramutgang
Samlet sett er ordboken rask i utførelse, men det gir ikke trådsikkerhet.
En Hashtable er en datastruktur som implementerer en assosiativ array abstrakt datatype, en struktur som kan kartlegge nøkkel til verdier. En ordbok er en datastruktur basert på Hashtable som lagrer verdier på grunnlag av nøkler.
Videre er Hashtable en svakt skrevet datastruktur. Derfor kan programmereren legge til nøkler og verdier av enhver gjenstandstype til Hashtable. En ordbok er sterkt skrevet datastruktur. ( Også, Hashtable er ikke generisk mens Dictionary er generisk type. I tillegg er det boksing og unboxing i Hashtable, men ikke i Dictionary. Ordboken bruker minimum minne og kjører raskere enn Hashtable. Henting av elementene i Hashtable vedlikeholder ikke den innførte ordren. På den annen side opprettholder henting av elementene fra en ordbok den innsatte rekkefølgen. Videre gir Hashtable flere trådsikkerhet. Den støtter flere lesertråder og en enkelt forfattertråd. Ordboken gir ikke trådsikkerhet. For å implementere trådsikkerhet, bør programmereren skrive sin egen synkroniserte kode. Hashtable ht = ny Hashtable (); Ordbok Forskjellen mellom Hashtable og Dictionary er at Hashtable er en svakt skrevet datastruktur, så det er mulig å legge til nøkler og verdier av hvilken som helst type mens ordboken er en sterkt skrevet datastruktur, så det er bare mulig å legge til elementene som tilfredsstiller spesifisert datatyper for både nøkkel og verdi. 1. "C # Hashtable Class." Www.tutorialspoint.com, Tutorials Point, 21. juli 2018, Tilgjengelig her.Type
Utføringshastighet
Henter elementene
Trådsikkerhet
Eksempel syntaks
Konklusjon
Henvisning:
2. "C # Hashtable." Datatyper i C #, opplæringslærer. Tilgjengelig her.
3. "C # Dictionary - Javatpoint." Www.javatpoint.com, Tilgjengelig her.