A LGORITMI IN
PODATKOVNE STRUKTURE 1
6. laboratorijske vaje
Preslikava
P RESLIKAVA
M(d) = r
element (enoličen ključ)
vrednost
Osnovne operacije:
• assign(M,d,r)
• compute(M,d)
• delete(M,d)
Primer: preslikava M(d) = r vsaki osebi d priredi številko bančnega računa r.
P RESLIKAVA
first
next element
next element
next element
… null
Implementacija z urejenim seznamom – hranimo pare <d i ,r i >, urejeno po ključih d i
header null
OrderedElement
obj
0obj
nclass OrderedElement {
Comparable element;
OrderedElement next;
… }
class OrderedLinkedList {
OrderedElement first;
public void insert(Comparable obj) {…}
… }
Na primer:
class Pair implements Comparable<Pair>
{
Comparable d;
Object r;
public int compareTo(Pair p) {…}
… }
P RESLIKAVA
first
next element
next element
… null
Implementacija z odprto zgoščeno tabelo:
header null
SetElement
obj
table 0
1
2
3
m
s
0 Sets
1 Sets
2 Sets
3 Sets
m SetNa primer:
class HashMapNode {
Object d;
Object r;
public boolean equals(Object obj) {…}
… } class HashMap
{
Set[] table;
private int hash(Object d) {return Math.abs(d.hashCode()) % table.length;}
… }