Pages

Senin, 21 Maret 2011

SOURCE CODE SISIP HAPUS NODE di C++

Hemm,,barusan buka2 folder kuliah dan menemukan ini...hhe
Ini tugas kuliah semester 2 matkul Algoritma dan Struktur Data (ASD), dulu diajarinnya pake C++...
Yah sebenernya sii,,jujur aku lupa ma materi matkul ini,,hhe... Jadi aku share disini buat nge-refresh ingatanku juga, mungkin bermanfaat juga buat temen-temen untuk mengingat kembali atau mungkin juga ada yang lagi nyari referensi yang berhubungan dengan materi ini...
So,,langsung ja... nii dia yang kutemukan... :)

#include
#include
#include

struct THNode
{
int data;
struct THNode *next;
};
int n;
struct THNode *head;
int isEmpty(){
if(head == NULL) return 1;
else return 0;
}
void insertDepan(int databaru){
THNode *baru;
baru = new THNode;
baru->data = databaru;
baru->next = NULL;
if(isEmpty()==1){
head=baru;
head->next = NULL;
}
else {
baru->next = head;
head = baru;
}
printf ("\n");
cout< printf ("\n\n");
}

void insertBelakang (int databaru){
THNode *baru,*bantu;
baru = new THNode;
baru->data = databaru;
baru->next = NULL;
if(isEmpty()==1){
head=baru;
head->next = NULL;
}
else {
bantu=head;
while(bantu->next!=NULL){
bantu=bantu->next;
}
bantu->next = baru;
}
printf ("\n");
cout< printf ("\n\n");
}

void hapusDepan (){
THNode *hapus;
int d;
if (isEmpty()==0){
if(head->next != NULL){
hapus = head;
d = hapus->data;
head = head->next;
delete hapus;
} else {
d = head->data;
head = NULL;
}
printf ("\n");
cout< puts("\n");
} else cout<<"\nKosong\n";
}


void hapusBelakang(){
THNode *hapus,*bantu;
int d;
if (isEmpty()==0){
if(head->next != NULL){
bantu = head;
while(bantu->next->next!=NULL){
bantu = bantu->next;
}
hapus = bantu->next;
d = hapus->data;
bantu->next = NULL;
delete hapus;
} else {
d = head->data;
head = NULL;
}
printf ("\n");
cout< } else cout<<"\nKosong\n";
}

void tampil(){
THNode *bantu;
bantu = head;
if(isEmpty()==0){
while(bantu!=NULL){
cout<data<<" ";
bantu=bantu->next;
}
cout< printf ("\n");
} else cout<<"\nKosong\n";
}


int main()
{
int pilih;
//struct node *start=NULL;
do
{
printf("MENU :");
puts("\n");
printf("1.Tambah depan\n");
printf("2.Tambah belakang\n");
printf("3.Hapus depan\n");
printf("4.Hapus belakang\n");
printf("5.Tampil\n");
printf("6.Keluar\n");
printf("\nPILIH MENU!!! ");
printf("\n\n\pilihan menu : ");scanf("%d",&pilih);
switch(pilih){
case 1:
printf("masukkan data : ");scanf("%d",&n);
insertDepan(n);
break;
case 2:
printf("masukkan data : ");scanf("%d",&n);
insertBelakang(n);
break;
case 3:hapusDepan();
break;
case 4:hapusBelakang();
break;
case 5:tampil();
break;
case 6:exit(0);
break;
default:
printf("\Pilihan salah\n");
break;
}
}
while(pilih!=6);
return 0;
}

Mungkin untuk outputnya gimana,,temen2 bisa langsung nyoba sendiri aja...hhe
Sekian postingan kali ini,, saya mau antri kamar mandi dulu... abis ini kuliah...
deee..... ^_^

1 komentar:

coretan mengatakan...

haduh harus bersusah payah dulu baru bisa running

Posting Komentar

 

UM Bloggers


Universitas Negeri Malang

Sample Text

Starting Point...

Bila aku harus mengulangi hidup ini, aku akan membuat kesalahan-kesalahan yang sama, tetapi aku pastikan bahwa aku menemukan kesalahan-kesalahan itu jauh lebih awal. Sehingga keberhasilan akan datang lebih awal menjemput dan meng'elukanku.
Aku tidak tahu takdirku, tetapi aku tahu hakku untuk berhasil.