Disusun oleh :
Nama : Edwin Susanto
NIM : 201301022
Dosen pengampu :
Yosef Murya Kusuma Ardhana.S.T., M.Kom
BAB I
TEORI DASAR
NULL
Linked List mengandung 3 buah simpul/node sebuah pointer. Simpul pada linked list
terdiri dari 2 komponen yaitu :
Array
Linked List
Statis
Dinamis
Random Access
Sequential Access
Single Field pointer-nya hanya satu dan satu arah , pada akhir node pointer-nya
menunjuk NULL. Setiap node pada Linked List mempunyai field yang berisi pointer
ke node berikutnya dan juga memiliki field yang berisi dua node terakhir dan
menunjuk ke NULL yang akan digunakan sebagai kondisi berhenti pada saat
pembacaan isi Linked List.
bantu untuk mengetahui node terakhir. Kemudian dikaitkan dengan node baru
untuk mengetahui data terakhir perlu digunakan perulangan.
BAB II
PENJELASAN PROGRAM
Pada bab Linked ini akan membahas tentang listing program linked list 01 , 02 dan 03
{
cout<<node->number<<" ";
node=node->next;
}
return 0;
}
Hasil Output program
Author: KOMPUTER12
*/
#include <iostream>
#include <stdlib.h>
#include <malloc.h>
#include <conio.h>
#define nil NULL
#define info(P) P->info
#define next(P) P->next
#define first(L) (L)
typedef int infotype;
typedef struct telmtlist *alamat;
using namespace std;
typedef struct telmtlist
{
infotype info;
alamat next;
}elmtlist;
typedef alamat list;
void cetaksenarai(list L)
{
list ps;
for(ps=L;ps!=nil;ps=ps->next)
{
cout<<" "<<info(ps)<<" -->";
}
cout<<" NULL"<<endl;
}
int main()
{
list pel;
list n;
int i,k,nilai;
buatsenarai (&pel);
cout<<"Masukkan Banyak Data = ";
cin>>k;
for(i=1;i<=k;i++)
{
cout<<"Masukkan Data Senarai ke- "<<i<<" = ";
cin>>nilai;
n=nodbaru(nilai);
sisipsenarai (&pel,n,NULL);
}
cetaksenarai(pel);
return 0;
}
10
14. void sisipsenarai (list *L, list t, list p) : Prosedur untuk sisipsenarai.
15. list nodbaru(int m) : Fungsi untuk membuat linked list baru.
16. Void cetaksenarai(list L) : Fungsi untuk mencetak senarai
Listing program linked list 03
/*
* Linked list 3.cpp
*
* Created on: Jun 3, 2014
*
Author: KOMPUTER12
*/
#include <iostream>
#include <cstring>
class node
{
public:
int x;
node *next;
};
using namespace std;
int main()
{
int n, i;
node*awal, *akhir,*temp;
awal=new node;
akhir=awal;
cout<<"input data=";
cin>>n;
for(i=1;i<=n;++i){
temp=new node;
11
temp->next=NULL;
cout<<"data"<<i<<"=";
cin>>temp->x;
akhir->next=temp;
akhir=temp;
}
cout<<"seluruh data\n";
temp=awal->next;
while(temp->next!=NULL){
cout<<temp->x<<endl;
temp=temp->next;
}
while(temp!=NULL){
cout<<temp->x<<endl;
temp=temp->next;
}
int p;
cout<<"Hapus posisi ke";
cin>>p;
node*temp1,*temp2;
temp1=awal;
for(i=1;i<p;++i)
temp1=temp1->next;
temp2=temp1->next;
temp1->next=temp2->next;
delete temp2;
cout<<"Seluruh Data\n";
temp=awal->next;
while(temp!=NULL){
cout<<temp->x<<endl;
temp=temp->next;
}
12
return 0;
}
Hasil Output program Linked list 03
13
Tugas Praktikum
Tugas Praktikum yang diberikan adalah modifikasi program linked list 01 , 02 dan 03 dengan
tipe data abstrak.
14
}start, *node;
start.next=NULL;
node=&start;
for(huruf=1;huruf<=10;huruf++)
{
node->next=(struct ListEntry*)malloc(sizeof(struct ListEntry));
node=node->next;
node->number=huruf;
node->next=NULL;
}
node=start.next;
while(node)
{
cout<<node->number<<" ";
node=node->next;
}
return 0;
}
15
Author: KOMPUTER12
*/
#include <iostream>
#include <stdlib.h>
#include <malloc.h>
16
17
info(n) = m;
next(n) = nil;
}
return n;
}
18
{
list pel;
list n;
buatsenarai (&pel);
cout<<"Masukkan Banyak Data = ";
cin>>linked.k;
for(linked.i=1;linked.i<=linked.k;linked.i++)
{
cout<<"Masukkan Data Senarai ke- "<<linked.i<<" = ";
cin>>linked.nilai;
n=nodbaru(linked.nilai);
sisipsenarai (&pel,n,NULL);
}
cetaksenarai(pel);
return 0;
}
Hasil Output program Linked list 02 struct
19
3. Iostream : Library
Iostream adalah library untuk input dan output cin dan cout.
4. Tanda { dan } adalah tanda untuk mengawali dan mengakhiri program.
5. Return 0 berfungsi untuk menampilkan program setelah dieksekusi.
6. Cout : untuk menampilkan output program yang sudah dituliskan.
7. Cin : untuk menginputkan data yang dimasukkan oleh user.
8. Malloc.h : pengarah suatu library yang digunakan untuk mengalokasikan memori
9. <List> : pengarah untuk melakukan kegiatan linked list.
10. Stdlib.h : pengarah suatu library yang digunakan untuk operasi artimatika dalam suatu
program.
11. Void buatsenarai(list *L) : Prosedur untuk Membuat Senarai.
12. void sisipsenarai (list *L, list t, list p) : Prosedur untuk sisipsenarai.
13. list nodbaru(int m) : Fungsi untuk membuat linked list baru.
14. Void cetaksenarai(list L) : Fungsi untuk mencetak senarai
15. Struct : Tipe data abstrak yang mempunyai class dan member sendiri-sendiri.
Author: KOMPUTER12
*/
#include <iostream>
#include <cstring>
class node
{
public:
int x;
node *next;
};
20
21
22
23
BAB III
KESIMPULAN
1. Linked List adalah struktur data yang paling sederhana yaitu Linked List atau struktur
Berkait atau Senarai Berantai.
2. 2 Komponen Linked list : Data dan Pointer.
3. Deklarasi Linked List :
Struct FileList
{
char filename[64];
struct FileList *next;
}
4. Linked List mempunyai 2 Macam Bentuk , yaitu :
24
BAB IV
DAFTAR PUSTAKA
Ardhana. YM Kusuma. 2013. Struktur Data dalam Ilustrasi Eclipse Indigo C ++.
Yogyakarta: CAPS (Center of Academic Publishing Service).
25