Link List insert

Unknown 07.55
Latihan LINK LIST INSERT :

postingan kali ini tentang program sederhana link list insert



#include<iostream>
#include<cstdlib>
#include<conio.h>
using namespace std;
struct TNote{
    int data;
    TNote *next;
};
struct TNode{
    int data;
    TNode *next;
};

TNote *head, *tail;
TNode *kepala, *ekor;
void init(){
    head==NULL;
    tail==NULL;
    kepala==NULL;
    ekor==NULL;
}
int isEmpty(){
    if(tail==NULL)return 1;
    else return 0;
}
int isEmpty1(){
    if(ekor==NULL)return 1;
    else return 0;
}

void insertData(int databaru){
    TNote *baru;
    baru=new TNote;
    baru->data=databaru;
    baru->next=NULL;
    if(isEmpty()==1){
        head=tail=baru;
        tail->next=NULL;
    }else{
        baru->next=head;
        head=baru;
    }
    cout<<"Input berhasil"<<endl;
}
void insertBelakang(int databaru){
    TNode *baru;
    baru=new TNode;
    baru->data=databaru;
    baru->next=NULL;
    if(isEmpty1()==1){
        kepala=baru;
        ekor=baru;
        ekor->next=NULL;
    }else{
        ekor->next=baru;
        ekor=baru;
    }
    cout<<"Input berhasil"<<endl;
}
void tampilData(){
    TNote *bantu;
    bantu=head;
    if(isEmpty()==0){
        while(bantu!=NULL){
            cout<<bantu->data<<"->";
            bantu=bantu->next;
        }
    }else cout<<"Link List Kosong"<<endl;
}
void tampil(){
    TNode *bantu;
    bantu=kepala;
    if(isEmpty1()==0){
        while(bantu!=NULL){
            cout<<bantu->data<<"->";
            bantu=bantu->next;
        }
    }else cout<<"\nData masih Kosong"<<endl;
}
void hapusDepan(){
    TNote *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<<d<<"terhapus";
    }else cout<<"Masih Kosong\n";
}
void hapusBelakang(){
    TNode *bantu,*hapus;
    int d;
    if(isEmpty1()==0){
        bantu=kepala;
        if(kepala!=ekor){
            while(bantu->next!=ekor){
                bantu=bantu->next;
            }
            hapus=ekor;
            ekor=bantu;
            d=hapus->data;
            delete hapus;
            ekor->next=NULL;
        }else{
            d=ekor->data;
            kepala=ekor=NULL;
        }
        cout<<d<<"terhapus\n";
    }else cout<<"Masih Kosong\n";
}
int main(){
    int pil,databaru;
    init();
    do{
        system("cls");
        cout<<endl<<endl;
        cout<<"========================"<<endl;
        cout<<"= PROGRAM LINKED LIST  ="<<endl;
        cout<<"========================"<<endl;
        cout<<"= 1.Insert depan      ="<<endl;
        cout<<"= 2.Insert belakang    ="<<endl;
        cout<<"= 3.Delete Depan       ="<<endl;
        cout<<"= 4.Delete Belakang    ="<<endl;
        cout<<"= 5.Tampil Data        ="<<endl;
        cout<<"= 6.Exit               ="<<endl;
        cout<<"========================"<<endl;
        cout<<"Masukkan Pilihan :";cin>>pil;
        switch(pil){
            case 1:system("cls");{
                cout<<"\n\n Masukkan Data : ";cin>>databaru;
                insertData(databaru);
                break;
            }
            case 2:system("cls");{
                cout<<"\n\n Masukkan Data : ";cin>>databaru;
                insertBelakang(databaru);
                break;
            }
            case 3:system("cls");{
                hapusDepan();
                break;
            }
            case 4:system("cls");{
                hapusBelakang();
                break;
            }
            case 5:system("cls");{
                cout<<"\n\n Tampil Data insert Depan : "<<endl;
                tampilData();
                cout<<"\n\n Tampil Data insert Belakang: "<<endl;
                tampil();
                break;
            }
            case 6:system("cls");{
                return 0;
                break;
            }
            default:system("cls");{
            cout<<"Maaf Pilihan Anda Tidak Tersedia"<<endl;
            }
        }getch();
       
       
       
    }while(pil!=6);
}

Share this

Related Posts

Previous
Next Post »

2 komentar

komentar

Komentar