Sobat sekalian gimana kabar nya di musim hujan ini? Banjir kah? Semoga saja tidak yaaa.
Kali ini saya akan posting tentang penambahan data pada Link List C++.
Di antara sobat sekalian pasti sudah ada yang tau proses penambahan data pada link list C++, ya dalam proses penambahan link list ini kita dapat menambahkan data dari depan, belakang, bahkan dari tengah sekali pun. Beda dengan Queue dan Stack yang penambahan datanya harus urut atau sesuai aturan yang ada.
Untuk memperjelas silahkan lihat gambar berikut.
Gimana paham kan?
Nah kalau yang ini sorce code cara penambahan data Link List C++:
void hapusDepan(){
TNode *hapus;
int d;
if (isEmpty()==0){
if(head!=tail){
hapus = head;
d = hapus->data;
head = head->next;
delete hapus;
} else {
d = tail->data;
head=tail=NULL;
}
cout<<endl<<d<<"
Terhapus\n";
} else
cout<<"Masih kosong\n";
cout<<"==================="<<endl;
}
void hapusTengah(){
TNode *bantu,*hapus;
int d;
if (isEmpty()==0){
if(head!=tail){
hapus = bantu;
d = hapus->data;
head = head->next;
delete hapus;
} else {
d = tail->data;
head=tail=NULL;
}
cout<<endl<<d<<"
terhapus\n";
} else
cout<<"Masih kosong\n";
cout<<"==================="<<endl;
}
void hapusBelakang(){
TNode *bantu,*hapus;
int d;
if (isEmpty()==0){
bantu = head;
if(head!=tail){
while(bantu->next!=tail){
bantu = bantu->next;
}
hapus = tail;
tail=bantu;
d = hapus->data;
delete hapus;
tail->next = NULL;
}else {
d = tail->data;
head=tail=NULL;
}
cout<<endl<<d<<"
terhapus\n";
} else
cout<<"Masih kosong\n";
cout<<"==================="<<endl;
}
void clear()
{
TNode *bantu,*hapus;
bantu = head;
while(bantu!=NULL)
{
hapus = bantu;
bantu = bantu->next;
delete hapus;
}
head = NULL;
tail = NULL;
}
Source Code di atas sudah di coba di codeblocks versi 12.11 dan terbukti bisa running.
Atau sobat bisa kunjungi link lain presentasi link list c++
Kalau masih ada kendala silahkan beri komentar ya sob :)
Terima Kasih telah berkunjung