Geschreven door studenten die geslaagd zijn Direct beschikbaar na je betaling Online lezen of als PDF Verkeerd document? Gratis ruilen 4,6 TrustPilot
logo-home
College aantekeningen

Hashing

Beoordeling
-
Verkocht
-
Pagina's
6
Geüpload op
14-01-2021
Geschreven in
2020/2021

Lecture notes of 6 pages for the course Data Structures at Comsats Institute Of Information And Technology (Hashing Operation)

Instelling
Vak

Voorbeeld van de inhoud

11/12/18




Announcements
2


¨ Submit Prelim 2 conflicts by Thursday night
¨ A6 is due Nov 7 (tomorrow!)




HASHING CS2110




Ideal Data Structure Mystery Data Structure in Your Life
3 4


What do
Data Structure add(val x) get(int i) contains(val x) these data
ArrayList
!(#) !(1) !(#)
structures
2 1 3 0
have in
LinkedList
2 1 3 0
!(1) !(#) !(#) common?
Goal: !(1) !(1) !(1)




AKA add, lookup, search




New Data Structure : Hash Set Intuition behind a Hash Set
5

Idea: finding an element in an array takes constant time
when you know which index it is stored in.
Data Structure add(val x) get(int i) contains(val x) So… let’s place elements in the array based on their
starting letter! (A=0, B=1, …)
ArrayList
2 1 3 0 !(#) !(1) !(#)
LinkedList # of
2 1 3 0
!(1) !(#) !(#) add(“CA”) CA 2
1 st letter
0 1 2 3
HashSet !(1) !(1) !(1)
3 1 2

Expected time 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 … 25

Worst-case: !(#) b CA MA NY OR PA




# of
contains(“DE”) DE 3
AKA add, lookup, search 1 st letter




1

, 11/12/18




What could possibly go wrong? Hash Functions
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 … 25
¨ Requirements:
b AL CA DE FL GA MA NY OR PA
1) deterministic
1 0
2) return a number*
¨ Some buckets get used quite a bit! 1
4 ¨ Properties of a good hash:
¤ called Collisions
3
¨ Not all buckets get used 1) fast
2) collision-resistant
3) evenly distributed
4) hard to invert

* the number is either in [0..n-1] where n is the size of the Hash Set, or
you compute the hash and then % n, constraining it to be in [0…n-1]




Example: hashCode() Can we have perfect hash functions?
9


¨ Method defined in java.lang.Object ¨ Perfect hash functions map each value to a different
¨ Default implementation: uses memory address of index in the hash table
object
¤ If you override equals, you must override hashCode!!! ¨Impossible in practice
¨ String overrides hashCode: ● Don’t know size of the array
s. hashCode() ∶= -[0] ∗ 31456 + -[1] ∗ 31458 + … + -[: − 1] ● Number of possible values far far exceeds the
array size
Do we like this hashCode?
● No point in a perfect hash function if it takes too
much time to compute




Collision Resolution Chaining (1) add(“NY”)



Each bucket is the beginning of a Linked List

Two ways of handling collisions:

1. Chaining 2. Open Addressing
# of
add(“NY”) NY 13
1 st letter


0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 … 25


b

CA MA NY OR PA


CO




2

Geschreven voor

Instelling
Vak

Documentinformatie

Geüpload op
14 januari 2021
Aantal pagina's
6
Geschreven in
2020/2021
Type
College aantekeningen
Docent(en)
Yasir faheem
Bevat
Alle colleges

Onderwerpen

$7.99
Krijg toegang tot het volledige document:

Verkeerd document? Gratis ruilen Binnen 14 dagen na aankoop en voor het downloaden kun je een ander document kiezen. Je kunt het bedrag gewoon opnieuw besteden.
Geschreven door studenten die geslaagd zijn
Direct beschikbaar na je betaling
Online lezen of als PDF

Maak kennis met de verkoper
Seller avatar
youtubecanvas

Maak kennis met de verkoper

Seller avatar
youtubecanvas COMSATS Institute Of Information Technology
Volgen Je moet ingelogd zijn om studenten of vakken te kunnen volgen
Verkocht
-
Lid sinds
5 jaar
Aantal volgers
0
Documenten
18
Laatst verkocht
-

0.0

0 beoordelingen

5
0
4
0
3
0
2
0
1
0

Recent door jou bekeken

Waarom studenten kiezen voor Stuvia

Gemaakt door medestudenten, geverifieerd door reviews

Kwaliteit die je kunt vertrouwen: geschreven door studenten die slaagden en beoordeeld door anderen die dit document gebruikten.

Niet tevreden? Kies een ander document

Geen zorgen! Je kunt voor hetzelfde geld direct een ander document kiezen dat beter past bij wat je zoekt.

Betaal zoals je wilt, start meteen met leren

Geen abonnement, geen verplichtingen. Betaal zoals je gewend bent via iDeal of creditcard en download je PDF-document meteen.

Student with book image

“Gekocht, gedownload en geslaagd. Zo makkelijk kan het dus zijn.”

Alisha Student

Bezig met je bronvermelding?

Maak nauwkeurige citaten in APA, MLA en Harvard met onze gratis bronnengenerator.

Bezig met je bronvermelding?

Veelgestelde vragen