Archive for May 30, 2009

linked list

hitung jumlah simpul :

Q = FIRST;
Jum = 1;
while (Q != LAST)
{ Q = Q->LINK;
Jum = Jum + 1;
}
printf("%i", JUM);

atau

Q = FIRST;
Jum = 1;
while (Q->LINK != NULL)
{ Q = Q->LINK;
Jum = Jum + 1;
}
printf("%i", JUM);

atau

Q = FIRST;
Jum = 0;
while (Q [...]

Bookmarks:
  • Facebook
  • Google Bookmarks
  • Digg
  • LinkedIn
  • Twitter
Read the rest of this entry »

double ended queue

ciri2 double ended queue :

kosong : L = R + 1
penuh kanan : R = n – 1
penuh kiri : L = 0
penuh kanan dan kiri : R = n – 1 && L = 0
bisa diisi dari kanan : R < n
bisa diisi dari kiri : L > 0
ada isinya : L < R [...]

Bookmarks:
  • Facebook
  • Google Bookmarks
  • Digg
  • LinkedIn
  • Twitter
Read the rest of this entry »

circular queue

ciri2 circular queue :

kosong : counter = 0
penuh : counter = n
bisa diisi : counter < n
ada isinya : counter > 0

kondisi awal :

f = 0;
r = -1;
counter = 0;

algoritma dasar circular queue :

INSERT

R = (R+1) % n;
Q[R] = X;
Counter++;

DELETE

X = Q[F];
[...]

Bookmarks:
  • Facebook
  • Google Bookmarks
  • Digg
  • LinkedIn
  • Twitter
Read the rest of this entry »

double stack

ciri2 double stack :

stack 1 kosong : top1 = -1
stack 2 kosong : top2 = n
stack penuh (stack 1 dan stack 2 tidak bisa diisi) : top2 – top1 = 1
stack bisa diisi (stack 1 dan stack 2 tidak bisa diisi) : top2 – top1 > 1
stack 1 ada isinya : top1 > -1
stack 2 [...]

Bookmarks:
  • Facebook
  • Google Bookmarks
  • Digg
  • LinkedIn
  • Twitter
Read the rest of this entry »

single stack

ciri2 single stack :

kosong : top = -1
penuh : top = n-1
bisa diisi : top < n-1
ada isinya : top > -1

kondisi awal :

top1 = -1;

algoritma dasar single stack :

PUSH

top = top + 1;
s[top] = x;

POP

x = s[top];
top = top – 1;

Bookmarks:

Bookmarks:
  • Facebook
  • Google Bookmarks
  • Digg
  • LinkedIn
  • Twitter
Read the rest of this entry »