Contoh Program Single Linked List C++

Kali ini mimin ingin share Contoh Program single linked list dengan C++ . sintax kali ini masih sangat sederhana sebab ini request yang sangat mepet dari temen ane yg minta dibuatin program linked list C++ buat tugas Struktur Data BSI semester 2. selengkapnya silahkan dilihat codinngya, jika ada pertanyaan silahkan komen dikolom komentar :D
#include <stdio.h>
#include <iostream.h>
#include <conio.h>
struct TNode{
    int data;
    TNode *next;
};
TNode *head, *tail;

void init(){
    head = NULL;
    tail = NULL;
}
int isEmpty(){
 if(tail == NULL) return 1;
 else return 0;
}
void insertDepan(int databaru){
  TNode *baru;
  baru = new TNode;
  baru->data = databaru;
  baru->next = NULL;
  if(isEmpty()==1){
          head=tail=baru;
          tail->next=NULL;
     }
  else {
         baru->next = head;
         head = baru;
  }
  cout<<"Data masuk\n";
}

void insertBelakang(int databaru){
 TNode *baru,*bantu;
 baru = new TNode;
 baru->data = databaru;
 baru->next = NULL;
 if(isEmpty()==1){
 head=baru;
 tail=baru;
 tail->next = NULL;
 }
 else {
  tail->next = baru;
  tail=baru;
 }
 cout<<"Data masuk\n";
}

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

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<<d<<"terhapus";
     } else cout<<"Masih kosong\n";
}
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<<d<<" terhapus\n";
     } else cout<<"Masih kosong\n";
}
void clear()
{
        TNode *bantu,*hapus;
        bantu = head;
        while(bantu!=NULL)
        {
            hapus = bantu;
            bantu = bantu->next;
            delete hapus;
        }
        head = NULL;
      printf("CLEAR");
}

main()
{
    int pil,databaru;

    do
    {
        clrscr();
        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. Clear                ="<<endl;
        cout<<"   = 7. Exit                 ="<<endl;
        cout<<"   ==========================="<<endl;
        cout<<"   Masukan Pilihan : ";cin>>pil;
        switch (pil)
        {
            case 1: clrscr();{
                cout<<"Masukkan Data = ";
                cin>>databaru;
                insertDepan(databaru);
                break;
            }
            case 2: clrscr();{
                cout<<"Masukkan Data = ";
                cin>>databaru;
                insertBelakang(databaru);
                break;
            }
            case 3: clrscr();{
                hapusDepan();
                break;
            }
            case 4: clrscr();{
                hapusBelakang();
                break;
            }
            case 5: clrscr();{
                tampil();
                break;
            }
            case 6: clrscr();{
                clear();
                break;
            }
            case 7: {
            return 0;
             break;
            }
            default : clrscr();{
            cout<<"\n Maaf, Pilihan yang anda pilih tidak tersedia!";
            }

        }
        getch();
    }
    while(pil!=7);
}

15 Responses to "Contoh Program Single Linked List C++"

  1. Sangat membantu program saya tapi error 1 gan

    ReplyDelete
  2. min, struktur dari penggunaan next ini sendiri seperti apa?

    ReplyDelete
  3. XCODEPLUS - The Best Resource to Learn to Code

    C++ & C# Tutorials and more...

    http://www.xcodeplus.net

    ReplyDelete
  4. XCODEPLUS - The Best Resource to Learn to Code

    C++ & C# Tutorials and more...

    http://www.xcodeplus.net

    ReplyDelete
  5. panjang banget wkwkw, btw makasih gan..

    ReplyDelete
  6. cara mudah dapet dollar >> http://belajarbarengz.blogspot.co.id/2017/06/cara-mudah-memperoleh-dollar-dengan.html?m=1

    ReplyDelete
  7. Gan tolong dong kalo bisa, di upload untuk yang Double Linked List nya...

    ReplyDelete
  8. This comment has been removed by the author.

    ReplyDelete
  9. Masukin data awalnya gmn ya bang?

    ReplyDelete
  10. root@danielxyz:~# 2

    SLLC Data Buku ke 1

    Nomor Buku : 101
    Judul Buku : algoritma
    Harga Buku : Rp. 666000

    SLLC Data Buku ke 2

    Nomor Buku : 109
    Judul Buku : matematika_diskrit
    Harga Buku : Rp. 79000

    Tekan Enter untuk kembali ke menu!

    ReplyDelete
  11. 101 C++ 5000 102 Java 1000 103 php 6000

    ReplyDelete
  12. c. Edit Harga(cari buku yang akan di edit berdasarkan nomer buku, lalu harganya saja yang diedit)

    ReplyDelete

-berkomentarlah dengan baik sesuai topik
-menaruh link aktif dianggap spam


backtotop