int data
simpul *next, *prev;
} *awal = NULL,*akhir = NULL, *baru;
SINGLE LINKED LIST NON-CIRCULAR
*TAMBAH DEPAN DAN TAMBAH BELAKANG
void tambah_awal_sllnc(int x){ //single linked list non-circular
baru = new simpul; //membuat node baru
baru->data=x; //masukkan data ke node baru
baru->next=NULL;
if(awal==NULL){ //apabila belum pernah membuat node, maka awal dan akhir adalah baru
awal = akhir = baru;
}
else {
baru->next=awal; //baru->next menunjuk ke awal
awal=baru; //sekarang, baru mennjadi awal
}
}
baru = new simpul; //membuat node baru
baru->data=x; //masukkan data ke node baru
baru->next=NULL;
if(awal==NULL){ //apabila belum pernah membuat node, maka awal dan akhir adalah baru
awal = akhir = baru;
}
else {
baru->next=awal; //baru->next menunjuk ke awal
awal=baru; //sekarang, baru mennjadi awal
}
}
void tambah_akhir_sllnc(int x){ //single linked list non-circular
baru = new simpul; //membuat node baru
baru->data=x; //masukkan data ke node baru
baru->next=NULL;
if(awal==NULL){ //apabila belum pernah membuat node, maka awal dan akhir adalah baru
awal = akhir = baru;
}
else {
akhir->next=baru; //akhir->next menunjuk ke baru
akhir=baru; //baru menjadi akhir
}
}
baru = new simpul; //membuat node baru
baru->data=x; //masukkan data ke node baru
baru->next=NULL;
if(awal==NULL){ //apabila belum pernah membuat node, maka awal dan akhir adalah baru
awal = akhir = baru;
}
else {
akhir->next=baru; //akhir->next menunjuk ke baru
akhir=baru; //baru menjadi akhir
}
}
SINGLE LINKED LIST CIRCULAR
*TAMBAH DEPAN DAN TAMBAH BELAKANG
*TAMBAH DEPAN DAN TAMBAH BELAKANG
void tambah_awal_sllc(int x){ //single linked list circular
baru = new simpul; //membuat node baru
baru->data=x; //masukkan data ke node baru
baru->next=NULL;
if(awal==NULL){ //apabila belum pernah membuat node, maka awal dan akhir adalah baru
awal = akhir = baru;
baru->next = baru ; //baru->next menunjuk ke dirinya sendiri
}
else {
baru->next=awal; //baru->next menunjuk ke awal
akhir->next=baru; //akhir->next menunjuk ke baru
awal=baru; //baru menjadi awal
}
}
baru = new simpul; //membuat node baru
baru->data=x; //masukkan data ke node baru
baru->next=NULL;
if(awal==NULL){ //apabila belum pernah membuat node, maka awal dan akhir adalah baru
awal = akhir = baru;
baru->next = baru ; //baru->next menunjuk ke dirinya sendiri
}
else {
baru->next=awal; //baru->next menunjuk ke awal
akhir->next=baru; //akhir->next menunjuk ke baru
awal=baru; //baru menjadi awal
}
}
void tambah_akhir_sllc(int x){ //single linked list circular
baru = new simpul; //membuat node baru
baru->data=x; //masukkan data ke node baru
baru->next=NULL;
if(awal==NULL){ //apabila belum pernah membuat node, maka awal dan akhir adalah baru
awal = akhir = baru;
baru->next = baru ; //baru->next menunjuk ke dirinya sendiri
}
else {
baru->next=awal; //baru->next menunjuk ke awal
akhir->next=baru; //akhir->next menunjuk ke baru
akhir=baru; //baru menjadi akhir
}
}
baru = new simpul; //membuat node baru
baru->data=x; //masukkan data ke node baru
baru->next=NULL;
if(awal==NULL){ //apabila belum pernah membuat node, maka awal dan akhir adalah baru
awal = akhir = baru;
baru->next = baru ; //baru->next menunjuk ke dirinya sendiri
}
else {
baru->next=awal; //baru->next menunjuk ke awal
akhir->next=baru; //akhir->next menunjuk ke baru
akhir=baru; //baru menjadi akhir
}
}
DOUBLY LINKED LIST NON-CIRCULAR
*TAMBAH DEPAN DAN TAMBAH BELAKANG
*TAMBAH DEPAN DAN TAMBAH BELAKANG
void tambah_awal_dllnc(int x){ //doubly linked list non-circular
baru = new simpul; //membuat node baru
baru->data=x; //masukkan data ke node baru
baru->next=NULL;
baru->prev=NULL;
if(awal==NULL){ //apabila belum pernah membuat node, maka awal dan akhir adalah baru
awal = akhir = baru;
}
else {
baru->next=awal; //baru->next menunjuk ke awal
awal->prev=baru; //awal->prev menunjuk ke baru
awal=baru; //baru menjadi awal
}
}
baru = new simpul; //membuat node baru
baru->data=x; //masukkan data ke node baru
baru->next=NULL;
baru->prev=NULL;
if(awal==NULL){ //apabila belum pernah membuat node, maka awal dan akhir adalah baru
awal = akhir = baru;
}
else {
baru->next=awal; //baru->next menunjuk ke awal
awal->prev=baru; //awal->prev menunjuk ke baru
awal=baru; //baru menjadi awal
}
}
void tambah_akhir_dllnc(int x){ //doubly linked list non-circular
baru = new simpul; //membuat node baru
baru->data=x; //masukkan data ke node baru
baru->next=NULL;
baru->prev=NULL;
if(awal==NULL){ //apabila belum pernah membuat node, maka awal dan akhir adalah baru
awal = akhir = baru;
}
else {
akhir->next=baru; //akhir->next menunjuk ke baru
baru->prev=akhir; //baru->prev menunjuk ke akhir
akhir=baru; //baru menjadi akhir
}
}
baru = new simpul; //membuat node baru
baru->data=x; //masukkan data ke node baru
baru->next=NULL;
baru->prev=NULL;
if(awal==NULL){ //apabila belum pernah membuat node, maka awal dan akhir adalah baru
awal = akhir = baru;
}
else {
akhir->next=baru; //akhir->next menunjuk ke baru
baru->prev=akhir; //baru->prev menunjuk ke akhir
akhir=baru; //baru menjadi akhir
}
}
DOUBLY LINKED LIST CIRCULAR
*TAMBAH DEPAN DAN TAMBAH BELAKANG
*TAMBAH DEPAN DAN TAMBAH BELAKANG
void tambah_awal_dllc(int x){ //doubly linked list circular
baru = new simpul; //membuat node baru
baru->data=x; //masukkan data ke node baru
baru->next=NULL;
baru->prev=NULL;
if(awal==NULL){ //apabila belum pernah membuat node, maka awal dan akhir adalah baru
awal = akhir = baru;
baru->next = baru ; //menunjuk ke
baru->prev = baru ; // dirinya sendiri
}
else {
baru->next=awal; //baru->next menunjuk ke awal
awal->prev=baru; //awal->prev menunjuk ke baru
baru->prev=akhir; //baru->prev menunjuk ke akhir
akhir->next=baru; //akhir->next menunjuk ke baru
awal=baru;
}
}
void tambah_akhir_dllc(int x){ //doubly linked list circular
baru = new simpul; //membuat node baru
baru->data=x; //masukkan data ke node baru
baru->next=NULL;
baru->prev=NULL;
if(awal==NULL){ //apabila belum pernah membuat node, maka awal dan akhir adalah baru
awal = akhir = baru;
baru->next = baru ; //baru menunjuk ke
baru->prev = baru ; // dirinya sendiri
}
else {
baru->next=awal; //baru->next menunjuk ke awal
awal->prev=baru; //awal->prev menunjuk ke baru
akhir->next=baru; //akhir->next menunjuk baru
baru->prev=akhir; //baru->prev menunjuk ke akhir
akhir=baru; //baru menjadi akhir
}
}
0 komentar:
Posting Komentar