• Tidak ada hasil yang ditemukan

Bahan strutur data tentang struktur berk

N/A
N/A
Protected

Academic year: 2018

Membagikan "Bahan strutur data tentang struktur berk"

Copied!
16
0
0

Teks penuh

(1)

Sahabat pena

blog ini berisikan tentang tugas-tugas dan curahan hati ya semoga bermanfaat bagi viewer nantinya

MAKALAH STRUKTUR DATA SINGLE LINKED LIST

Mei 07, 2017

BAB I PENDAHULUAN 1.1. Latar Belakang

Pemograman dalam struktur data ada beberapa macam. Salah satunya adalah pemograman C++. Dalam pemograman ini biasanya menggunakan variable Array, Struktur dan Linked List. Makalah ini membahas tentang salah satu variabel tersebut.

Single Linked List dikembangkan pada tahun 1955-1956 oleh Allen Newell, Cliff Shaw dan Herbert Simon di RAND Corporation sebagai struktur data utama untuk bahasa Information Processing Language (IPL). IPL dibuat untuk mengembangkan program artificial intelligence (kecerdasan buatan), seperti pembuatan Chess Solver .

Victor Yngve di Massachusetts Institute of Technology (MIT) juga menggunakan linked list pada natural language processing dan machine transitions pada bahasa pemrograman COMMIT. atu bentuk struktur data, berisi kumpulan data (node) yang tersusun secara sekuensial, saling sambung-menyambung, dinamis dan terbatas.

1. Linked List sering disebut juga Senarai Berantai.

2. Linked List saling terhubung dengan bantuan variabel pointer.

3. Masing-masing data dalam Linked List disebut dengan node (simpul) yang menempati alokasi memori secara dinamis dan biasanya berupa struct yang terdiri dari beberapa field.

1.2. Tujuan

 Mahasiswa memahami tentang Single Linked List

 Mahasiswa dapat menerapkan Linked List

(2)

1.3 Rumusan Masalah

1. Memasukan Node Depan 2. Memasukan Node Belakang

3. Tampilkan Node 4. Menghapus Node Depan 5. Menghapus Node Belakang 6. Menghapus Semua Node 7. Keluar

BAB II

LANDASAN TEORI 2.1 Pengertian

1. Single : artinya field pointer-nya hanya satu buah saja dan satu arah serta pada akhir node pointernya menunjuk NULL.

2. Linked List : artinya node-node tersebut saling terhubung satu sama lain.

3. Setiap node pada linked list mempunyai field yang berisi pointer ke node berikutnya, dan juga memiliki field yang berisi data.

4. Node terakhir akan menunjuk ke NULL yang akan digunakan sebagai kondisi berhenti pada saat pembacaan isi linked list.

Single linked list adalah linked list dengan simpul berisi satu link / Pointer yang mengacu kesimpul berikutnya.Operasi-operasi pada single linked list:

1. Penyisipan

(3)

Penyisipan didepan pada single linked list adalah dengan cara menyisipkan data pada elemen awal list, sehingga pointer awal menunjuk list baru.

A

NULL Head

A B

Datang data baru yaitu B:

NULL NULL Baru Head

A B

NULL

Baru Head

Perintah yang digunakan di c++ adalah

void insertDepan(int databaru) {

TNode *baru; baru = new TNode; baru->data = databaru; baru->next = NULL; if(isEmpty()==1) {

head=baru;

head->next = NULL; }

(4)

{

baru->next = head; head = baru; }

printf(”Data masuk\n”); }

B. Penyisipan Dibelakang

Penyisipan dibelakang pada single linked list adalah dengan cara menyisipkan data pada elemen akhir list, sehingga pointer akhir menunjuk list baru.

Perintah yang digunakan dalam c++ adalah :

void insertBelakang (int databaru) {

TNode *baru,*bantu; baru = new TNode; baru->data = databaru; baru->next = NULL; if(isEmpty()==1) { head=baru;

head->next = NULL; }

else { bantu=head;

(5)

bantu->next = baru; }

printf("Data masuk\n“); }

2. Penghapusan

A. Penghapusan di depan

Untuk menghapus sebuah simpul diperlukan satu buah tambahan variabel pointer yaitu variabel bantu yang berguna untuk menunjukkan simpul manakah yang akan dihapus.

B. Penghapusan di belakang

Penghapusan dibelakang menggunakan pointer bantu dan hapus.pointer hapus digunakan untuk menunjuk node yang akan dihapus. Pointer bantu digunakan untuk menunjuk node sebelum node yang akan dihapus, yang kemudian akan dijadikan node terakhir.

3. Fungsi untuk menghapus semua node

Untuk menghapus semua node dalam linked list di C++ dapat menggunakan perintah sebagai berikut:

void clear() {

TNode *bantu,*hapus; bantu = head;

while(bantu!=NULL) {

hapus = bantu; bantu = bantu->next; delete hapus;

}

(6)

4. Menampilkan Linked List

Jika head sama dengan null, maka linked list tersebut adalah kosong. Jika tidak NULL, maka node bantu akan berpindah ke node selanjutnya dan membaca isi datanya dengan menggunakan field next sehingga dapat saling berkait.

Pemanggilan dalam c++ adalah sebagai berikut:

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

printf(“\n”);

(7)

BAB III PEMBAHASAN 3.1 Contoh Kasus dan Program

Contoh Pemograman :

#include <conio.h> #include <iostream.h> #include <stdio.h> #include <stdlib.h>

struct TNode {

(8)
(9)

cout<<"Data masuk"<<endl;

bantu=bantu->next; }

bantu->next = baru; }

cout<<"Data masuk\n"; cin>>baru->data;

cout<<" "<<bantu->data<<" --> "; bantu=bantu->next;

(10)

cout<<"NULL"; cout<<endl; }

else {

cout<<"Masih kosong\n"; }

(11)

while(bantu->next->next!=NULL)

cout<<d<<" terhapus\n"; }

else cout<<"Masih kosong\n";

}

(12)

cout<<" NAMA NIM "<<endl; cout<<endl<<endl;

cout<<" WINDA WULANDARI |11151490\t"<<endl; cout<<" LAILA NUR AZIZAH |11151445\t"<<endl; cout<<" EKA HERDIT JUNINGSIH |11151486\t"<<endl; cout<<" SHOLEHAH AYUNINGTIAS |11151686\t"<<endl;

cout<<" DINA MARINDA ZULFIANIKA |11152001\t"<<endl<<endl<<endl; cout<<"Pilih Menu di bawah ini : "<<endl;

cout<<"-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*"<<endl; cout<<"1. Memasukan Node Depan"<<endl; cout<<"2. Memasukan Node Belakang"<<endl; cout<<"3. Tampilkan Node"<<endl;

cout<<"4. Menghapus Node Depan"<<endl; cout<<"5. Menghapus Node Belakang"<<endl; cout<<"6. Menghapus Semua Node"<<endl; cout<<"7. Keluar"<<endl;

cout<<"-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*"<<endl; cout<<"Pilih salah satu menu : "; cin>>pilihan;

switch(pilihan) {

case 1: clrscr();

cout<<"Memasukan Node Depan"<<endl; insertDepan();

cout<<"Memasukan Node Belakang"<<endl; insertBelakang ();

(13)

tampil();

cout<<"Menghapus Node Depan "<<endl; hapusDepan ();

cout<<"Menghapus Node Belakang"<<endl; hapusBelakang();

cout<<" Menghapus Semua Node"<<endl; clear();

cout<<"Keluar"<<endl;

cout<<"Tekan apa saja untuk keluar"; getch();

break; default:

cout<<"inputan salah"<<endl; getch();

(14)

}

3.2 Flowchart

BAB IV PENUTUP 4.1. Kesimpulan

Linked List adalah salah satu bentuk struktur data, berisi kumpulan data (node) yang tersusun secara sekuensial, saling sambung-menyambung, dinamis dan terbatas.

Didalam linked list ada tiga pembahasan tentang penyisipan, yaitu penyisipan didepan, penyisipan ditengah dan penyisipan dibelakang .

Dan ada tiga pembahasan tentang penghapusan, yaitu penghapusan didepan, penghapusan ditengah dan penghapusan dibelakang .

Menampilkan Linked List , jika head sama dengan null, maka linked list tersebut adalah kosong. Jika tidak NULL, maka node bantu akan berpindah ke node selanjutnya dan membaca isi datanya dengan menggunakan field next sehingga dapat saling berkait.

Postingan populer dari blog ini

proposal usaha/ business plan batik tulis

(15)

Tahun Pelajaran 2013/201

SMK Pancasila 6Jatisrono Tahun Pelajaran 2013/2014

BATIK TULIS PARNARAYA Disusun oleh: 1.Sholehha Ayuningtyas Kelas : 2 AK 4 Program Keahlian : Akuntansi

PENDAHULUAN A.Latar Belakang

Dewasa ini, minimnya lapangan pekerjaan mengakibatkan banyak pengangguran.

Pengangguran tak mengenal ijazah. Tak hanya orang-orang yang tidak sekolah tetapi juga orang-orang yang sudah menamatkan sekolahnya, bahkan bergelar master juga tak luput dari gelar “pengangguran”.Fenomena tersebut akhirnya mendorong beberapa orang untuk berwirausaha.

BACA SELENGKAPNYA

SOAL AKUNTANSI BIAYA DAN PRAKTEK SEMESTER 4 D3 BSI

Mei 07, 2017

BACA SELENGKAPNYA

Diberdayakan oleh Blogger

(16)

SHOLEHHA AYUNINGTYAS

KUNJUNGI PROFIL

Arsip

Referensi

Dokumen terkait

Wade (2007) terdapat beberapa aspek dari pengelolaan marah, yaitu:.. 1) Mengenali emosi marah, emosi marah merupakan kemampuan untuk mengendalikan perasaan marah sewaktu

Sex rasio jantan dan betina pada populasi rusa timor di TN Alas Purwo juga tergolong normal dimana jantan lebih banyak dari betina dengan perbandingan 1:4 pada kelas

Hal ini dilihat dari nilai rata-rata BOD 5 dan COD pada stasiun 4 merupakan nilai rata-rata tertinggi dari stasiun lainnya yaitu sebesar 12,62 mg/L dan 15,34 mg/L

Status Kebersihan Gigi dan Mulut dengan Status Karies Gigi (Kajian pada Murid Kelompok Umur 12 Tahun di Sekolah Dasar Negeri Kota Bukit Tinggi).. Berita Kedokteran

Mengingat masih banyaknya pelajar yang belum mengerti tentang kesehatan reproduksi, sangatlah penting untuk dilakukan penyuluhan dengan harapan dapat mengubah pengetahuan dan

Penelitian ini bertujuan untuk mengetahui motivasi petani dalam penerapan teknologi TABELA (Tanam Benih Langsung) dan untuk mengetahui hubungan motivasi petani terhadap

Dalam penelitian kali ini akan diidentifikasi terlebih dahulu negara-negara mana yang memiliki karakter procyclical ataupun countercyclical pada kebijakan fiskal

Sebagai muslimah kita harus tahu jilbab yang dapat menutup aurat, aurat yang menutup dada dan tidak terlihat lekuk tubuh muslimah. muslimah harus tau apa