Anda di halaman 1dari 18

LAPORAN RESMI

LINKED LIST




Disusun oleh:
Anas fikri abdul aziz
201301049
Dosen:
Yosef Murya Kusuma Ardhana.,S.T

JURUSAN
SISTEM INFORMASI
SEKOLAH TINGGI KOMPUTER (STIKOM)
YOS SUDARSO
PURWOKERTO
2014



BAB I
DASAR TEORI



Linked list mengandung tiga buah simpul atau node. Sebuah pointer menunjuk simpul terkiri
dan setiap simpul mempunyai pointer yang menunjuk ke simpul berikutnya. Pointer pada
simpul terakhir tidak menunjuk kemana-mana maka berisi NULL.
Simpul pada linked list terdiri dari dua komponen utama yaitu:
1. Data yaitu bisa berupa satu elemen data atau beberapa elemen
data.
2. Pointer yang menunjuk ke simpul lain

















BAB II

LANGKAH PRAKTIKUM

#include <iostream>
#include <malloc.h>
#include <list>


using namespace std;

int main ()
{
int i;

struct ListEntry
{
int number;
struct ListEntry *next;
} start, *node;

start.next=NULL;
node= & start;
for (i=1; i<=10; i++)
{
node->next=(struct ListEntry *) malloc(sizeof(struct ListEntry));
node=node->next;
node->number=i;
node->next=NULL;
}

node=start.next;

while (node)
{
cout<<node->number<<" ";
node=node->next;
};
return 0;

}


PENJELASAN:
1.#include atau disebut sebagai pengarah preprocessor #include berfungsi untuk
menginstruksikan compiler untuk menyertakan berkas C++ sumber yang lain sebelum
kompilasi dimulai.

2. <iostream>adalah sebuah library yang dibutuhkan untuk fungsi input seperti cin>>var dan
output seperti cout<<var.

3. Int main() adalah main program berupa integer atau program utama dalam koding tersebut.
Setiap program utama harus diawali dengan tanda kurung kurawal buka{ dan diakhiri dengan
tanda kurung kurawal tutup }.
4.struct adalah kumpulan data strucktur yang sama maupun berbeda
5. Cout<<var adalah instruksi atau sebuah fungsi perintah untuk memunculkan variable yang
sudah ditulis oleh programmer.

6. Cin>>var adalah perintah untuk memasukkan atau menginputkan data ke variable yang
sudah dideklarasikan diatas.
7. Fungsi return 0; digunakan untuk membaca data karakter
8. <cstring> : pengarah untuk menambah tipe data String.
9. Statement For : Digunakan untuk perulangan pada program.

10. Statement While : Digunakan untuk perulangan pada program.
#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 buatsenarai (list *L)
{
first (*L)= nil;

}

list nodbaru(int m)
{
list n;
n=(list)malloc(sizeof(elmtlist));
if (n!=NULL)
{
info(n)=m;
next(n)=nil;
}
return n;
}

void sisipsenarai (list *L, list t, list p)
{
if (p==nil)
{
t->next=*L;
*L=t;
}
else
{
t->next=p->next;
p->next=t;
}
}

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<<"Masukan Banyak Data =";
cin>>k;
for(i=1;i<=k;i++)
{
cout<<"Masukan Data Senarai ke-"<<i<<" = ";
cin>>nilai;
n=nodbaru(nilai);
sisipsenarai (&pel,n,NULL);
}

cetaksenarai (pel);
return 0;
}


PENJELASAN:
1.#include atau disebut sebagai pengarah preprocessor #include berfungsi untuk
menginstruksikan compiler untuk menyertakan berkas C++ sumber yang lain sebelum
kompilasi dimulai.

2. <iostream>adalah sebuah library yang dibutuhkan untuk fungsi input seperti cin>>var dan
output seperti cout<<var.

3. Int main() adalah main program berupa integer atau program utama dalam koding tersebut.
Setiap program utama harus diawali dengan tanda kurung kurawal buka{ dan diakhiri dengan
tanda kurung kurawal tutup }.
4.struct adalah kumpulan data strucktur yang sama maupun berbeda
5. Cout<<var adalah instruksi atau sebuah fungsi perintah untuk memunculkan variable yang
sudah ditulis oleh programmer.

6. Cin>>var adalah perintah untuk memasukkan atau menginputkan data ke variable yang
sudah dideklarasikan diatas.
7. Fungsi return 0; digunakan untuk membaca data karakter
8. <cstring> : pengarah untuk menambah tipe data String.
9. Statement For : Digunakan untuk perulangan pada program.

10. Statement While : Digunakan untuk perulangan pada program.
11. Malloc.h : pengarah suatu library yang digunakan untuk mengalokasikan memori

12. <List> : pengarah untuk melakukan kegiatan linked list.







#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;
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;
}
return 0;
}

PENJELASAN:
1.#include atau disebut sebagai pengarah preprocessor #include berfungsi untuk
menginstruksikan compiler untuk menyertakan berkas C++ sumber yang lain sebelum
kompilasi dimulai.

2. <iostream>adalah sebuah library yang dibutuhkan untuk fungsi input seperti cin>>var dan
output seperti cout<<var.

3. Int main() adalah main program berupa integer atau program utama dalam koding tersebut.
Setiap program utama harus diawali dengan tanda kurung kurawal buka{ dan diakhiri dengan
tanda kurung kurawal tutup }.
4.struct adalah kumpulan data strucktur yang sama maupun berbeda
5. Cout<<var adalah instruksi atau sebuah fungsi perintah untuk memunculkan variable yang
sudah ditulis oleh programmer.

6. Cin>>var adalah perintah untuk memasukkan atau menginputkan data ke variable yang
sudah dideklarasikan diatas.
7. Fungsi return 0; digunakan untuk membaca data karakter
8. <cstring> : pengarah untuk menambah tipe data String.
9. Statement For : Digunakan untuk perulangan pada program.

10. Statement While : Digunakan untuk perulangan pada program.















BAB III
TUGAS PRAKTIKUM
TYPEDEF
#include <iostream>
#include <malloc.h>
#include <list>
using namespace std;
typedef int INTER;
int main()
{
INTER huruf;
struct ListEntry{
int number;
struct ListEntry *next;
15
}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;
}

PENJELASAN:
1.#include atau disebut sebagai pengarah preprocessor #include berfungsi untuk
menginstruksikan compiler untuk menyertakan berkas C++ sumber yang lain sebelum
kompilasi dimulai.

2. <iostream>adalah sebuah library yang dibutuhkan untuk fungsi input seperti cin>>var dan
output seperti cout<<var.

3. Int main() adalah main program berupa integer atau program utama dalam koding tersebut.
Setiap program utama harus diawali dengan tanda kurung kurawal buka{ dan diakhiri dengan
tanda kurung kurawal tutup }.
4.struct adalah kumpulan data strucktur yang sama maupun berbeda
5. Cout<<var adalah instruksi atau sebuah fungsi perintah untuk memunculkan variable yang
sudah ditulis oleh programmer.

6. Cin>>var adalah perintah untuk memasukkan atau menginputkan data ke variable yang
sudah dideklarasikan diatas.
7. Fungsi return 0; digunakan untuk membaca data karakter
8. <cstring> : pengarah untuk menambah tipe data String.
9. Statement For : Digunakan untuk perulangan pada program.

10. Statement While : Digunakan untuk perulangan pada program.


#include <iostream>
#include <stdlib.h>
#include <malloc.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;
struct linked{
int i,k,nilai;
}linked;
void buatsenarai(list *L)
{
first(*L) = nil;
}
list nodbaru(int m)
{
list n;
n = (list) malloc(sizeof(elmtlist));
if (n!= NULL)
{

info(n) = m;
next(n) = nil;
}
return n;
}
void sisipsenarai (list *L, list t, list p)
{
if(p==nil)
{
t->next=*L;
*L=t;
}
else
{
t->next=p->next;
p->next=t;
}
}
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;
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;
}



PENJELASAN:
1.#include atau disebut sebagai pengarah preprocessor #include berfungsi untuk
menginstruksikan compiler untuk menyertakan berkas C++ sumber yang lain sebelum
kompilasi dimulai.

2. <iostream>adalah sebuah library yang dibutuhkan untuk fungsi input seperti cin>>var dan
output seperti cout<<var.

3. Int main() adalah main program berupa integer atau program utama dalam koding tersebut.
Setiap program utama harus diawali dengan tanda kurung kurawal buka{ dan diakhiri dengan
tanda kurung kurawal tutup }.
4.struct adalah kumpulan data strucktur yang sama maupun berbeda
5. Cout<<var adalah instruksi atau sebuah fungsi perintah untuk memunculkan variable yang
sudah ditulis oleh programmer.

6. Cin>>var adalah perintah untuk memasukkan atau menginputkan data ke variable yang
sudah dideklarasikan diatas.
7. Fungsi return 0; digunakan untuk membaca data karakter
8. <cstring> : pengarah untuk menambah tipe data String.
9. Statement For : Digunakan untuk perulangan pada program.

10. Statement While : Digunakan untuk perulangan pada program.

#include <iostream>
#include <cstring>
class node
{
public:
int x;
node *next;
};

typedef struct linked{
int n,i;
int p;
}list;
using namespace std;
int main()
{
linked list;
node*awal, *akhir,*temp;
awal=new node;
akhir=awal;
cout<<"Input data=";
cin>>list.n;
for(list.i=1;list.i<=list.n;++list.i){
temp=new node;
temp->next=NULL;
cout<<"data"<<list.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;
}

cout<<"Hapus posisi ke";
cin>>list.p;
node*temp1,*temp2;
temp1=awal;
for(list.i=1;list.i<list.p;++list.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;
}
return 0;
}


PENJELASAN:
1.#include atau disebut sebagai pengarah preprocessor #include berfungsi untuk
menginstruksikan compiler untuk menyertakan berkas C++ sumber yang lain sebelum
kompilasi dimulai.

2. <iostream>adalah sebuah library yang dibutuhkan untuk fungsi input seperti cin>>var dan
output seperti cout<<var.

3. Int main() adalah main program berupa integer atau program utama dalam koding tersebut.
Setiap program utama harus diawali dengan tanda kurung kurawal buka{ dan diakhiri dengan
tanda kurung kurawal tutup }.
4.struct adalah kumpulan data strucktur yang sama maupun berbeda
5. Cout<<var adalah instruksi atau sebuah fungsi perintah untuk memunculkan variable yang
sudah ditulis oleh programmer.

6. Cin>>var adalah perintah untuk memasukkan atau menginputkan data ke variable yang
sudah dideklarasikan diatas.
7. Fungsi return 0; digunakan untuk membaca data karakter
8. <cstring> : pengarah untuk menambah tipe data String.
9. Statement For : Digunakan untuk perulangan pada program.

10. Statement While : Digunakan untuk perulangan pada program.






KESIMPULAN
Linked list dapat di ibaratkan seperti gerbong kereta api yang satu sama lain
menyambung ,perbedaan linked list dengan array adalah linked list lebih peraktis dan dapa
menyambung /memutus variable sesuai dengan keinginan penguna
Linked list memiliki 2 komponen utama yaitu:
1.data terdiri satu element atau lebih
2.point yang menunjuk kesimpul lain

Anda mungkin juga menyukai