Kamis, 09 Januari 2014

Stack (Tumpukan)

Stack adalah sekumpulan data yang organisasi atau bentuknya menyerupai tumpukan data,
dapat dicontohkan seperti gambar di bawah ini : 



Prinsip / Konsep Proses pada  Stack

LIFO  (Last In First Out)
Proses pada  Stack

a.  AWAL (Inisialisasi)
b.  PUSH  (Insert, Masuk, Simpan, Tulis)
c.  POP  (Delete, Keluar, Ambil , Baca / Hapus)

Dalam Struktur STACK,  digunakan istilah :
PUSH
untuk : Simpan, atau Masuk, atau Insert, atau Tulis.
POP    
untuk : Ambil, atau Keluar, atau  Delete, atau Baca, atau Hapus
Algoritma dasar untuk PUSH

Top = Top + 1;
S[Top] = X;
Top+= 1;
S[Top] = X;
Top++;
S[Top] = X;
S[++Top] = X;
Algoritma dasar untuk POP

X = S[Top];
Top = Top – 1;
X = S[Top];
Top-=1;
X = S[Top];
Top–;
X = S[Top--];
Kondisi dan Ciri Stack :
KOSONG  Ciri :   Top = -1
PENUH      Ciri :   Top = n-1
BISA DIISI  Ciri:   Top < n-1
ADA ISINYA Ciri :Top > -1
Algoritma yang lengkap untuk proses PUSH

————————————————————–
Bila BISA DIISI lakukan PUSH
————————————————————–
void PUSH(void)
{ if ( Top < n-1 )
{ Top = Top + 1;
S[Top] = X;
}
else
printf( “Stack Penuh”);
}
—————————————————————-
Bila PENUH jangan PUSH
else lakukan PUSH
—————————————————————-
void PUSH(void)
{ if ( Top == n-1 )
printf( “Stack Penuh”);
else
{ Top = Top + 1;
S[Top] = X;
}
}
Algoritma yang lengkap untuk proses POP

—————————————————-
Bila ADA ISINYA lakukan POP
—————————————————-
void POP(void)
{
if (Top > -1 )
{
X   = S[Top];
Top = Top-1;
}
else
printf(“Stack Kosong”);
}
—————————————————
Bila KOSONG  jangan POP
else lakukan POP
—————————————————-
void POP(void)
{
if ( Top == -1 )
printf(“Stack Kosong”);
else
{
X   = S[Top];
Top = Top – 1;
}
}

Sumber : http://trikarai.com/

Tidak ada komentar:

Posting Komentar