MAKALAH STRUKTUR DATA. DOSEN PEMBIMBING Nisa miftachurohmah, S.kom., M.Si PENYUSUN SITI JAMILATUL MU ADDIBAH ( )

Ukuran: px
Mulai penontonan dengan halaman:

Download "MAKALAH STRUKTUR DATA. DOSEN PEMBIMBING Nisa miftachurohmah, S.kom., M.Si PENYUSUN SITI JAMILATUL MU ADDIBAH ( )"

Transkripsi

1 MAKALAH STRUKTUR DATA DOSEN PEMBIMBING Nisa miftachurohmah, S.kom., M.Si PENYUSUN SITI JAMILATUL MU ADDIBAH ( ) FAKULTAS TEKNIK PROGRAM STUDI SISTEM INFORMASI UNIVERSITAS NUSANTARA PGRI KEDIRI 2016

2 BAB 1 KONSEP DASAR STRUKTUR DATA Apa itu Struktur Data? Cara menyimpan atau merepresentasikan data didalam komputer agar bisa dipakai secara efesien. Apa Itu Data? Data adalah representasi dari fakta dunia nyata. Fakta atau keterangan tentang kenyataan yang disimpan, direkam atau direpresentasikan dalam bentuk tulisan, suara, gambar, sinyal atau simbol. Pemakaian struktur data yang tepat didalam proses pemrograman akan menghasilkan algoritma yang lebih jelas dan tepat, sehingga menjadikan program secara keseluruhan lebih efesien dan sederhana. KONSTANTA DAN VARIABEL Jika dalam membuat suatu program, tentu akan sering menggunakan bilangan numerik atau suatu kalimat string yang sama yang akan digunakan berkali-kali, ada baiknya bilangan atau kalimat tersebut dijadikan sebagai suatu konstanta. Manfaat Konstanta : Penggunaan konstanta akan membuat program menjadi lebih mudah dimengerti dan diperbaiki. Penggunaan konstanta akan dapat memberikan nama yang mudah dipahami untuk suatu bilangan numerik yang kompleks. Deklarasi Konstanta Konstanta dideklarasikan pada awal program. Sesuai dengan namanya konstanta, maka nilai dalam konstanta tersebut akan selalu konstan (tetap). Nilai tersebut tidak dapat diganti pada saat program sedang dijalankan. Deklarasi Variabel Variabel adalah sebuah identifier yang nilainya dapat diubah sesuai dengan kebutuhan program. Jika dibutuhkan sebuah variabel yang dapat dikenali oleh semua lingkungan dalam program maka harus digunakan variabel Global.

3 Pada C++ selalu terdapat fungsi utama, variabel global biasanya dideklarasikan di luar fungsi utama tersebut. Juga terdapat variabel Lokal. Variabel lokal hanya dikenali oleh suatu fungsi saja, artinya variabel lokal tidak dikenal oleh lingkungan luar di dalam program yang dibuat. Variabel lokal harus berada dalam lingkup fungsi tertentu. Tipe Data Di dalam bahasa pemrograman terdapat beberapa tipe data dasar yang telah didefenisikan dan digolongkan : - Tipe bilangan bulat(integer) - Bilangan real(floating point) - Tipe logika(boolean) dan - Tipe karakter/teks(character/string). Pada saat mendeklarasikan sebuah variabel, secara otomatis harus mendeklarasikan tipe data yang dapat ditampung oleh varibel tersebut. BAB 2 ARRAY Konsep Dasar Array Array merupakan tipe terstruktur yang terdiri dari sejumlah komponen-komponen yang mempunyai tipe yang sama. Suatu array mempunyai jumlah komponen yang banyaknya tetap. Banyaknya komponen dalam suatu array ditunjukkan oleh suatu indek untuk membedakan variabel yang satu dengan variabel lainnya. Setiap data yang terdapat dalam array tersebut menempati alamat memori yang berbeda disebut elemen array. Untuk mengakses nilai dari suatu elemen array, akan digunakan indeks dari array tersebut. Sangat perlu diperhatikan bahwa dalam bahasa C/C++, indeks array selalu dimulai dari angka 0, bukan 1. Hal ini berbeda dengan bahasa pemrograman lainnya (misalnya bahasa Pascal) dimana indeks awal array dapat ditentukan sendiri sesuai dengan keinginan kita. Untuk mendeklarasikan suatu array dalam bahasa C adalah dengan menggunakan tanda [ ] (bracket).

4 Bentuk Penulisan : tipe_data nama_array [banyak_elemen] ; Contoh Pendeklarasian Array : float Nil_Akhir [6] ; Variabel array dalam bahasa C/C++ dapat digolongkan menjadi tiga dimensi : A. Array Berdimensi Satu Array atau larik adalah kumpulan dari nilai-nilai data bertipe sama dalam urutan tertentu yang menggunakan sebuah nama yang sama. Nilai-nilai data pada suatu larik disebut dengan elekmen-elemen larik. Letak urutan dari suatu larik ditunjukkan oleh suatu subscript atau index. Deklarasi array (larik): tipe_data nama_var_array [ukuran]; Keterangan : tipe_data : menyatakan jenis tipe data elemen larik (int, char, float, dll) nama_var_array : menyatakan nama variabel yang dipakai. ukuran : menunjukkan jumlah maksimal elemen larik. Contoh : Int nilai[6]; Inisialisasi array : Menginisialisasi array sama dengan memberikan nilai awal array pada saat didefinisikan. int nilai[6] = {8,7,5,6,4,3}; bisa disederhanakan sehingga menjadi : int nilai[] = {8,7,5,6,4,3}; Keterangan : Contoh diatas berarti berarti anda memesan tempat di memori komputer sebanyak 6 tempat dengan indeks dari 0-5, dimana indeks ke-0 bernilai 8, ke-1 bernilai 7, dst, dan semua elemennya bertipe data integer. Catatan: Untuk memberikan niai 0 terhadap seluruh elemen array pada saat didefinisikan, Anda dapat memberikan nilai awal 0 pada elemen pertama. Sebagai contoh: Int temp[100] = {0}; Akan memberikan hasil pemberian nilai nol dari subscript bernilai 0 hingga 99.

5 Mengakses elemen array : nama_var_array [indeks]; Keterangan : Pengisian dan pengambilan nilai pada indeks tertentu dapat dilakukan dengan mengeset nilai atau menampilkan nilai pada indeks yang dimaksud. Pengaksesan elemen array dapat dilakukan berurutan atau random berdasarkan indeks tertentu secara langsung. Contoh : nilai[2]; Suatu array dapat digambarkan sebagai kotak panjang yang berisi kotak-kotak kecil didalam kotak panjang tersebut. Elemen Elemen Elemen Elemen Elemen Elemen Array Nil_Akhir B. Array Berdimensi Dua Array tidak hanya dapat dibentuk dalam dimensi satu, juga dapat dibentuk dalam dimensi dua. Bentuk penulisan array berdimensi dua adalah sebagai berikut : tipe_data nama_array [elemen_1][elemen_2] = { nilai array }; float nilai[2][5] = {2, 3, 4, 5, 2},{4, 2, 6, 2, 7};

6 BAB 3 STRUCTURE Struktur merupakan kumpulan elemen data yang digabungkan menjadi satu kesatuan data. Masing-masing elemen data tersebut dinamakan field atau elemen struktur. Field tersebut bisa memiliki tipe data yang ataupun berbeda, meskipun field tersebut dalam satu kesatuan tetapi tetap bisa siakses secara individu. Struktur dan array mempunyai kesamaan dan perbedaan, kesamaannya yaitu alokasi memori untuk elemen-elemennya sudah ditentukan sebelum program dijalankan. Perbedaannya, array adalah struktur data yang tipe data dari elemen-elemennya harus sama dan elemen tersebut diakses melalui indeks sedangkan struktur adalah struktur data yang tipe data dari elemenelemennya tidak harus sama dan elemen tersebut diakses melalui identifier atau nama variabel. Deklarasi struktur struct nama_struktur // nama struktur, kata struct harus ada { type1 element1; type2 element2; anggota / elemen dari struktur type3 element3;.. } nama_object; // identifier yang digunakan untuk pemanggilan struktur atau struct nama_struktur { type1 element1; type2 element2; type3 element3;.. } ; struct nama_struktur nama_object; Enumerasi Enumerasi adalah tipe data yang mempunyai elemen-elemen bertipe konstnta dengan urutan yang sudah dtentukan. Nilai-nilai dari konstanta ini berupa nilai-nilai integer yang diwakili oleh pengenal yang ditulis di antara tanda kurung kurawal { dan }. Tipe ini dideklarasikan dengan kata kunci enum. Deklarasi Enumerasi : Enum nama_enumerasi{nilai1,nilai2, } Nested structure (Struktur Bersarang) Suatu struktur yang dapat digunakan di dalam struktur yang lainnya.

7 Structure of Array Apabila hendak menggunakan 1 struct untuk beberapa kali, ada 2 cara : Deklarasi manual #include <stdio.h> typedef struct Mahasiswa { char NIM[8]; char nama[50]; float ipk; }; void main() { Mahasiswa a,b,c; } artinya struct mahasiswa digunakan untuk 3 variabel, yaitu a,b,c Struct of array #include <stdio.h> typedef struct Mahasiswa { char NIM[8]; char nama[50]; float ipk; }; void main() { Mahasiswa mhs[3]; } artinya struct mahasiswa digunakan untuk mhs[0], mhs[1], dan mhs[2] BAB 4 POINTER (VAR. PENUNJUK) Pointer adalah suatu variabel penunjuk yang menunjuk pada suatu alamat memori komputer tertentu. Pointer merupakan variabel level rendah yang dapat digunakan untuk menunjuk nilai integer, character, float, double, atau single, dan bahkan tipe-tipe data lain yang didukung oleh bahasa C. Variabel biasa, sifatnya statis dan sudah pasti, sedangkan pada pointer sifatnya dinamis dan dapat lebih fleksibel. Variabel pointer yang tidak menunjuk pada nilai apapun berarti memiliki nilai NULL, dan disebut sebagai dangling pointer karena nilainya tidak diinisialisasi dan tidak dapat diprediksi.

8 Operator Pointer Terdapat dua macam operator pointer, yaitu : 1.Operator Alamat / Deference ( & ). 2.Operator Reference ( * ). 1. Operator Alamat / Dereference Operator(&) Setiap variabel yang dideklarasikan, disimpan dalam sebuah lokasi memori dan pengguna biasanya tidak mengetahui di alamat mana data tersebut disimpan. Dalam C++, untuk mengetahui alamat tempat penyimpanan data, dapat digunakan tanda ampersand(&) yang dapat diartikan alamat. Contoh : Bil1 = &Bil2; dibaca: isi variabel bil1 sama dengan alamat bil2 2. Operator Reference (*) Penggunaan operator ini, berarti mengakses nilai sebuah alamat yang ditunjuk oleh variabel pointer. Contoh : Bil1=*Bil2; dibaca: bil1 sama dengan nilai yang ditunjuk oleh bil2. Deklarasi variabel pointer tipe * nama_pointer; Beberapa hal tentang pointer : Operasi variabel pointer dapat dikerjakan oleh variabel pointer yang lain, contoh : X = 10; Ptr1 = &X; Ptr2 = Ptr1; Ptr1 dan Ptr2 menghasilkan alamat variabel X yang sama. OPERASI POINTER 1. Operasi penugasan Nilai dari suatu variabel pointer dapat disalin ke variabel pointer yang lain. contoh: y = 35; x1 = &y; x2 = x1; 2. Operasi aritmatika Suatu variabel pointer hanya dapat dilakukan operasi aritmatika dengan nilai integer saja. Operasi yang biasa dilakukan adalah operasi penambahan dan pengurangan. Operasi penambahan dengan suatu nilai menunjukkan lokasi data berikutnya (index selanjutnya) dalam memori. Begitu juga operasi pengurangan. 3. Operasi Logika Operasi logika juga dapat dilakukan pada sebuah variabel pointer

9 BAB 5 FUNCTION (FUNGSI) Functin/fungsi adalah bagian dari suatu program yang memiliki nama tertentu yang unik, digunakan untuk suatu pekerjaan tertentu, serta letaknya dipisahkan dari bagian program yang menggunkan/memanggil fungsi tersebut. Tipe data sederhana : integer, real, boolean dan string Dalam matematika : f(x,y) = 3x y +xy,f adalah sebuah fungsi dengan parameter x dan y. Nilai yang diberikan fungsi tergantung nilai parameter masukannya. Fungsi diakses dengan memanggil namanya (sama seperti prosedur). Fungsi dapat mengandung parameter formal berjenis parameter masukan.fungsi harus dideklarasikan dengan tipenya atau jenis hasilnya. Fungsi dibagi 2: a. Fungsi tanpa parameter b. Fungsi dengan parameter Dalam pemrograman dikenal tiga jenis parameter yaitu : 1. Parameter masukan, adalah parameter yang digunakan untuk menampung nilai yang akan dijadikan masukan (input) ke dalam suatu fungsi, artinya, sebuah fungsi dapat menghasilkan nilai yang berbeda tergantung dari nilai dalam perameter yang dimasukan pada saat pemanggilan fungsi tersebut. 2. Parameter keluaran, adalah parameter yang digunakan untuk menampung nilai yang akan dijadikan keluaran (output) yang akan dikirimkan ke bagian yang memanggil fungsi tersebut, umumnya parameter ini digunakan untuk fungsi yang tidak memiliki nilai balik (prosedur) 3. Parameter masukan/keluaran, adalah parameter yang digunakan untuk menampung nilai yang akan dijadikan masukan (input) ke dalam suatu fungsi selain itu juga menampung nilai yang akan dijadikan keluaran (output) yang akan dikirimkan ke bagian yang memanggil fungsi tersebut, artinya, sebuah parameter sebelum fungsi dijalankan bertindak sebagai parameter masukan dan setelah fungsi dijalankan parameter tersebut bertindak sebagai parameter keluaran.

10 BAB 6 SORTING (PENGURUTAN) Sorting adalah proses mengatur sekumpulan objek menurut aturan atau susunan tertentu. Urutan objek tersebut dapat menaik (ascending = dari data kecil ke data lebih besar) atau menurun (descending = dari data besar ke data lebih kecil). Banyak sekali algoritma pengurutan yang ada, tetapi disini akan kita pelajari 3 metode yaitu: Bubble sort (gelembung) Selection sort (maksimum/minimun) Insertion sort (sisip) 1. PENGURUTAN GELEMBUNG Metode pengurutan gelembung (bubble sort) diinspirasi oleh gelembung sabun yang ada di permukaan air. Karena berat jenis gelembung sabun lebih ringan daripada berat jenis air maka gelembung sabun akan selalu mengapung. Prinsip pengapungan ini juga dipakai pada pengurutan gelembung. Elemen yang berharga paling kecil diapungkan, artinya diangkat ke atas (atau ke ujung paling kiri) melalui pertukaran. Proses pengapungan ini dilakukan N kali langkah. Pada langkah ke-i, Larik[1..N] akan terdiri dari 2 bagian yaitu: A. Bagian yang sudah terurut yaitu L[1]..L[i]. B. Bagian yang belum terurut L[I+1]..L[n]. ALGORITMA PENGURUTAN GELEMBUNG Untuk mendapatkan larik yan terurut menaik, proses yang harus dilakukan pada setiap langkah sebagai berikut: Langkah 1: Mulai dari elemen K=N,N-1,N-2,..2 bandingkan L[K] jika L[K] < L[K-1], pertukarkan L[K] dengan L[K-1]. Pada akhir langkah 1, elemen L[1] berisi harga minimum pertama. Langkah 2: Mulai dari elemen K=N,N-1,N-2,..3 bandingkan L[K] jika L[K] < L[K-1], pertukarkan L[K] dengan L[K-1]. Pada akhir langkah 2, elemen L[2] berisi harga minimum kedua dan L[1]..L[2] terurut.. Langkah 3: Mulai dari elemen K=N,N-1,N-2,..4 bandingkan L[K] jika L[K] < L[K-1], pertukarkan L[K] dengan L[K-1]. Pada akhir langkah 3, elemen L[3] berisi harga minimum ketiga dan L[1]..L[3] terurut.. Langkah N-1: Mulai dari elemen K=N,N-1,N-2,..4 bandingkan L[K] jika L[K] < L[K-1], pertukarkan L[K] dengan L[K-1].

11 BAB 7 SEARCHING (PENCARIAN) Ada beberapa pencarian yang akan kita uraikan disini: 1. Pencarian Beruntun (Sekuensial Search) 2. Pencarian Beruntun dengan sentinel 3. Pencarian Bagi dua (Binary Search) Pencarian Beruntun (Sekuensial Search) Konsep : Membandingkan setiap setiap elemen larik satu per satu secara urut (beruntun), mulai dari elemen pertama sampai dengan elemen yang terakhir. Ada 2 macam pencarian beruntun,yaitu pencarian pada array yang sudah terurut, dan pencarian pada array yang belum terurut. Pencarian Beruntun Dengan Sentinel Algoritma ini adalah pengembangan dari algoritma pencarian beruntun. Yang dimaksud dengan sentinel adalah elemen fiktif yang sengaja ditambahkan sesudah elemen terakhir dari larik tersebut. Jadi jika elemen terakhir dari larik adalah L[N], maka sentinel diletakkan pada elemen L[N+1]. Akibatnya proses pencarian akan selalu menemukan data yang dicari, akan tetapi harus selalu diperiksa letak data yang ditemukan, apakah: 1. Di antara elemen-elemen larik yang sesungguhnya(antara L[1] sampai dengan L[N]) 2. Pada elemen fiktif [L[N+1]] Pencarian Bagi Dua (Binary Search) Syarat : Data harus terurut Salah satu keuntungan data yang terurut adalah memudahkan pencarian, yang dalam hal ini adalah pencarian bagi dua. Sebenarnya dalam kehidupan sehari-hari kita sering menerapkan algoritma ini. Untuk mencari kata tertentu dalam kamus (misalnya kamus bahasa Inggris), kita tidak membuka kamus tersebut dari halaman awal sampai halaman akhir satu persatu, namun kita mencarinya dengan cara membelah atau membagi halaman-halaman buku tersebut. Begitu seterusnya sampai kita menemukan kata yang dicari. Prinsip Pencarian : Kita asumsikan data sudah terurut, misalkan terurut menurun. Kita menyebut indeks terkecil sebagai indeks ujung paling kiri, dan indeks terbesar sebagai indeks ujung paling kanan. Misalkan indeks kiri Ia dan indeks kanan adalah Ib. Pada mulanya Ia adalah 0 dan Ib adalah N. Langkah 1: Bagi 2 elemen larik pada elemen tengah. Elemen tengah adalah elemen dengan

12 indeks k=(ia+ib) div 2. (Elemen tengah, L[k], membagi larik menjadi 2 bagian L[Ia k-1] dan bagian kanan L[k+1 Ib]). Langkah 2: Periksa apakah L[k]=X. Jika L[k]=X, pencarian dihentikan sebab X sudah ditemukan, tetapi jika tidak, harus ditentukan apakah pencarian pada larik bagian kiri atau larik bagian kanan. Jika L[k] < X maka pencarian dilakukan pada larik kiri. Sebaliknya jika L[k] >X maka pencarian dilakukan pada larik bagian kanan. Langkah 3: Ulangi langkah 1 sampai X atau Ia>Ib. BAB 8 LINKED LIST LINKED LIST Linked List adalah salah satu bentuk struktur data, berisi kumpulan data (node) yang tersusun secara sekuensial, saling sambung-menyambung, dinamis dan terbatas. Linked List sering disebut juga Senarai Berantai. Linked List saling terhubung dengan bantuan variabel pointer. 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. Bentuk Single Linked List Pengertian: Single artinya field pointer-nya hanya satu buah saja dan satu arah serta pada akhir node, pointernya menunjuk NULL..Linked List artinya node-node tersebut saling terhubung satu sama lain. Setiap node pada linked list mempunyai field yang berisi pointer ke node berikutnya, dan juga memiliki field yang berisi data.

13 Node terakhir akan menunjuk ke NULL yang akan digunakan sebagai kondisi berhenti pada saat pembacaan isi linked list. Pembuatan Single List Deklarasi Node typedef struct TNode{ int data; TNode *next; }; Penjelasan: 1. Pembuatan struct bernama TNode yang berisi 2 field, yaitu field data bertipe integer dan field next yang bertipe pointer dari TNode 2. Setelah pembuatan struct, buat variabel head yang bertipe pointer dari TNode yang berguna sebagai kepala linked list. 3. Digunakan keyword new yang berarti mempersiapkan sebuah node baru berserta alokasi memorinya, kemudian node tersebut diisi data dan pointer nextnya ditunjuk ke NULL. TNode *baru; baru = new TNode; baru->data = databaru; baru->next = NULL; Single List Menggunakan Head 1. Dibutuhkan satu buah variabel pointer: head 2. Head akan selalu menunjuk pada node pertama Deklarasi Pointer Penunjuk Kepala Single Linked List Manipulasi linked list tidak bisa dilakukan langsung ke node yang dituju, melainkan harus menggunakan suatu pointer penunjuk ke node pertama dalam linked list (dalam hal ini adalah head). Deklarasinya sebagai berikut: TNode *head;

14 BAB 9 STACK STACK Stack atau tumpukan adalah suatu struktur yang penting dalam pemrograman. Bersifat LIFO ( Last In First Out ). Benda yang terakhir masuk ke dalam stack akan menjadi benda pertama yang dikeluarkan dari stack. Ujung list disebut top. Ada 2 operasi dasar yang bisa dilakukan pada stack yaitu : Push (menambah/menyisipkan data) Pop (menghapus/mengurangi data) Stack Exception Eksekusi suatu operasi stack mungkin mengakibatkan suatu kondisi error condition yang disebut exception. Dalam Stack ADT, operasi pop dan top tidak dapat dilakukan jika stack nya kosong. Upaya mengeksekusi pop dan top pada stack yang kosong akan mengakibatkan adanya EmptyStackException. BAB 10 QUEUE QUEUE Queue atau antrian adalah barisan elemen yang apabila ditambah maka penambahannya berada di posisi belakang dan jika dilakukan pengambilan elemen dilakukan di elemen paling depan (front). Bersifat FIFO ( First In First Out ). Benda yang pertama masuk ke dalam queue akan menjadi benda pertama yang dikeluarkan dari queue. Dalam queue sendiri terdapat beberapa operasi, yaitu: 1. IsEmpty : Mengecek apakah queue kosong atau tidak 2. IsFull : Mengecek apakah queue sudah penuh atau belum 3. Enqueue : Menambahkan data di queue 4. Dequeue : Mengambil data dari queue 5. Clear : Menghapus data dalam antrian 6. View : melihat data dalam antrian

15 Berbeda dengan stack, queue mempunyai 2 kata kunci, yaitu tail dan head. Fungsi nya buat apa? Head adalah penanda urutan paling depan, sedangkan tail adalah penanda urutan paling belakang. Karena jumlah operasinya banyak, kita kerjakan secara modular aja ya biar lebih mudah. 1. Deklarasi Awal Queue Variabel yang akan digunakan adalah data (array sebagai tempat queue), head, tail. Sama seperti Stack, Nilai dari head dan tail dimulai dari -1 yang menandakan queue kosong. 2. IsEmpty Sama seperti di Stack, IsEmpty berguna untuk mengecek apakah queue kosong atau tidak. Indikator bahwa queue kosong adalah nilai dari head dan tail bernilai IsFull Operasi IsFull digunakan untuk mengecek apakah queue sudah penuh atau belum. Indikator kalau queue penuh adalah nilai tail = max 1. Mengapa? karena nilai maksimal pada array yang mempunyai index 7 pada saat diakses akan mempunyai nilai maksimal Enqueue Enqueue digunakan untuk memasukkan data kedalam queue. Sama seperti push dalam stack. Sebelum memasukkan data kedalam antrian, kita harus mengecek terlebih dahulu apakah queue / antrian sudah penuh atau belum. Kalau belum maka kita harus mengecek apakah head sudah berada pada nilai 0 atau belum. Ini sangat penting karena nilai head tidak akan lebih dari 0. PERLU DIPERHATIKAN! Yang akan bergerak terus adalah tail, sedangkan head hanya penunjuk urutan paling depan, sehingga nilainya tidak pernah lebih dari 0. Kecuali antrian kosong, maka posisi head dan tail akan kembali menjadi Dequeue Kebalikan dari fungsi enqueue, dequeue digunakan untuk mengambil data yang sudah masuk di urutan pertama. Sehingga kita tinggal membaca data yang ada di posisi head. Nah inilah fungsi dari head. Jangan lupa kita cek dulu apakah queue kosong atau tidak. Tapi jika ada isinya, setelah data diambil, data dibelakangnya digeser ke depan. 6. Clear Operasi clear digunakan untuk menghapus data yang ada di dalam queue. Caranya cukup merubah nilai pada head dan tail menjadi -1. Tidak perlu diperhatikan data yang ada di dalam array. Nantinya data data tersebut juga akan ditimpa. 7. View Operasi ini digunakan untuk melihat data yang ada didalam queue. Caranya adalah dengan membaca data pada index yang terdapat diantara head sampai tail.

Struktur Data Array. Rijal Fadilah S.Si

Struktur Data Array. Rijal Fadilah S.Si Struktur Data Array Rijal Fadilah S.Si Array Berdimensi Satu Array Satu dimensi tidak lain adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris. Elemen-elemen tersebut memiliki tipe data

Lebih terperinci

Pertemuan 7. REVIEW dan QUIS

Pertemuan 7. REVIEW dan QUIS Pertemuan 7 REVIEW dan QUIS 1. Type data dibawah ini, yang tidak termasuk dalam tipe data sederhana tunggal, adalah : a. Boolean d. Integer b. String e. float c. Char 2. ==, =,!=, termasuk dalam operator

Lebih terperinci

ALGORITMA DAN STRUKTUR DATA ARRAY STACK DAN QUEUE

ALGORITMA DAN STRUKTUR DATA ARRAY STACK DAN QUEUE ALGORITMA DAN STRUKTUR DATA ARRAY STACK DAN QUEUE STACK = TUMPUKAN SUATU SUSUNAN KOLEKSI DATA DIMANA DATA DAPAT DITAMBAHKAN DAN DIHAPUS SELALU DILAKUKAN PADA BAGIAN AKHIR DATA, YANG DISEBUT DENGAN TOP

Lebih terperinci

Algoritma Dan Struktur Data II. Queue

Algoritma Dan Struktur Data II. Queue Algoritma Dan Struktur Data II Queue Apakah Queue itu? Putuu Putra Astawa Apakah Queue itu? Penambahan data dilakukan pada sebuah ujung sebuah list, sedangkan penghapusan data dilakukan pada ujung yang

Lebih terperinci

Masukan Judul... Infotype àsebuah tipe terdefinisi yang menyimpan informasi sebuah elemen list

Masukan Judul... Infotype àsebuah tipe terdefinisi yang menyimpan informasi sebuah elemen list Universitas Muhammadiyah Sukabumi Artikel Struktur Data Oleh : fahmi fauzi Masukan Judul... 1. STACK DAN QUEUE DENGAN LINKED LIST Pengertian Linked list : sekumpulan elemen bertipe sama, yang mempunyai

Lebih terperinci

SINGLE LINKED LIST (NON CIRCULAR)

SINGLE LINKED LIST (NON CIRCULAR) SINGLE LINKED LIST (NON CIRCULAR) KONSEP POINTER DAN LINKED LIST Untuk mengolah data yang banyaknya tidak bisa ditentukan sebelumnya, maka disediakan satu fasilitas yang memungkinan untuk menggunakan suatu

Lebih terperinci

Algoritma Dan Struktur Data II

Algoritma Dan Struktur Data II Algoritma Dan Struktur Data II Array dan Matriks Apa itu Struktur Data? PROGRAM ALGORITMA STRUKTUR DATA Algoritma.. deskripsi langkah-langkah penyelesaian masalah yang tersusun secara logis 1. ditulis

Lebih terperinci

POINTER STACK DAN QUEUE. Institut Teknologi Sumatera

POINTER STACK DAN QUEUE. Institut Teknologi Sumatera POINTER STACK DAN QUEUE ALGORITMA DAN STRUKTUR DATA Institut Teknologi Sumatera PRE TEST Apakah yang disebut dengan array? Bagaimana cara deklarasi dan pengacuan dari sebuah array? Apa kekurangan array?

Lebih terperinci

ARRAY STATIS. Type namatype_array = array [1..maks_array] of tipedata. nama_var_array : namatype_array {indeks array dari 1 sampai maksimum array}

ARRAY STATIS. Type namatype_array = array [1..maks_array] of tipedata. nama_var_array : namatype_array {indeks array dari 1 sampai maksimum array} ARRAY STATIS Array (larik) merupakan tipe data terstruktur yang terdiri dari sejumlah elemen yang mempunyai tipe data yang sama dan diakses/diacu lewat indeksnya. Array memiliki jumlah komponen yang jumlahnya

Lebih terperinci

KONSEP POINTER DAN LINKED LIST

KONSEP POINTER DAN LINKED LIST Pertemuan 3 KONSEP POINTER DAN LINKED LIST Untuk mengolah data yang banyaknya tidak bisa ditentukan sebelumnya, maka disediakan satu fasilitas yang memungkinan untuk menggunakan suatu perubah yang disebut

Lebih terperinci

Struktur Data. Tumpukan : Definisi & Operasi. Pertemuan 4 PROBLEM ALGORITHM DATA IMPLEMENTATION. Pert. 4b Struktur Data - FMIPA USD

Struktur Data. Tumpukan : Definisi & Operasi. Pertemuan 4 PROBLEM ALGORITHM DATA IMPLEMENTATION. Pert. 4b Struktur Data - FMIPA USD Pertemuan 4 : Definisi & Operasi Disusun oleh : PH. Prima Rosa, S.Si., M.Sc. Sri Hartati Wijono, S.Si. 2003/2004 Pert. 4b Struktur Data - FMIPA USD - 2003 Hal. 1 Struktur Data PROBLEM ALGORITHM DATA IMPLEMENTATION

Lebih terperinci

MODUL PRAKTIKUM STRUKTUR DATA. Dosen Pengampu M.Bahrul Ulum, S.Kom., M.Kom. Asisten Lab Mia Kastina PROGRAM STUDI TEKNIK INFORMATIKA

MODUL PRAKTIKUM STRUKTUR DATA. Dosen Pengampu M.Bahrul Ulum, S.Kom., M.Kom. Asisten Lab Mia Kastina PROGRAM STUDI TEKNIK INFORMATIKA 2018 MODUL PRAKTIKUM STRUKTUR DATA Dosen Pengampu M.Bahrul Ulum, S.Kom., M.Kom Asisten Lab Mia Kastina PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS ILMU KOMPUTER UNIVERSITAS ESA UNGGUL JAKARTA DAFTAR ISI

Lebih terperinci

Pendahuluan Struktur Data. Nisa ul Hafidhoh

Pendahuluan Struktur Data. Nisa ul Hafidhoh Pendahuluan Struktur Data Nisa ul Hafidhoh nisa@dsn.dinus.ac.id 08156114760 Tujuan Mahasiswa dapat melakukan pemrograman dalam skala menengah dengan memanfaatkan struktur data internal yang kompleks dan

Lebih terperinci

2. Mahasiswa dapat membuat dan menggunakan array dan linked list dalam suatu kasus.

2. Mahasiswa dapat membuat dan menggunakan array dan linked list dalam suatu kasus. 1 ARRAY & LINKED LIST MODUL 1 Standar kompetensi: 1. Mahasiswa mengetahui perbedaan array dan linked list. 2. Mahasiswa dapat membuat dan menggunakan array dan linked list dalam suatu kasus. 3. Mahasiswa

Lebih terperinci

STACK (TUMPUKAN) Tumpukan uang koin Tumpukan kotak Tumpukan Buku. Gambar 1. Macam-macam tumpukan

STACK (TUMPUKAN) Tumpukan uang koin Tumpukan kotak Tumpukan Buku. Gambar 1. Macam-macam tumpukan STACK (TUMPUKAN) adalah suatu urutan elemen yang elemennya dapat diambil dan ditambah hanya pada posisi akhir (top) saja. Contoh dalam kehidupan sehari-hari adalah tumpukan piring di sebuah restoran yang

Lebih terperinci

SATUAN ACARA PENGAJARAN

SATUAN ACARA PENGAJARAN S a t u a n A c a r a P e n g a j a r a n 1 SATUAN ACARA PENGAJARAN Mata Kuliah : Struktur Data Kode Mata Kuliah : TIF-104 Jumlah SKS : 4 SKS (3 SKS Kelas 1 SKS Praktikum) Waktu Pertemuan : 150 menit kelas,

Lebih terperinci

Algoritma dan Struktur Data STACK

Algoritma dan Struktur Data STACK Algoritma dan Struktur Data STACK Teknik Informatika Universitas Muhammadiyah Malang 2016 Tujuan Instruksional Mahasiswa mampu : Memahami tentang konsep stack Mengetahui mekanisme pengoperasian sebuah

Lebih terperinci

Bab 4 Pointer dan Struktur Data Dinamik 16 BAB IV POINTER DAN STRUKTUR DATA DINAMIK TUJUAN PRAKTIKUM TEORI PENUNJANG

Bab 4 Pointer dan Struktur Data Dinamik 16 BAB IV POINTER DAN STRUKTUR DATA DINAMIK TUJUAN PRAKTIKUM TEORI PENUNJANG Bab 4 Pointer dan Struktur Data Dinamik 16 BAB IV POINTER DAN STRUKTUR DATA DINAMIK TUJUAN PRAKTIKUM 1. Mengerti dalam penggunaan pointer. 2. Dapat membuat larik dinamik dan daftar berkait TEORI PENUNJANG

Lebih terperinci

STRUKTUR DATA Pertemuan 1 s.d 8

STRUKTUR DATA Pertemuan 1 s.d 8 STRUKTUR DATA Pertemuan 1 s.d 8 Sasaran: Meningkatkan: pemahaman pengetahuan tentang teori dasar struktur data dan penanganan data serta pembuatan algoritma dan penggunaan strukturd dalam pemrograman Materi

Lebih terperinci

Langkah Mudah Belajar Struktur Data Menggunakan C/C++

Langkah Mudah Belajar Struktur Data Menggunakan C/C++ Langkah Mudah Belajar Struktur Data Menggunakan C/C++ Sanksi Pelanggaran Pasal 113 Undang-Undang Nomor 28 Tahun 2014 tentang Hak Cipta 1. Setiap Orang yang dengan tanpa hak melakukan pelanggaran hak ekonomi

Lebih terperinci

KONSEP POINTER DAN LINKED LIST

KONSEP POINTER DAN LINKED LIST Pertemuan 4 KONSEP POINTER DAN LINKED LIST Untuk mengolah data yang banyaknya tidak bisa ditentukan sebelumnya, maka disediakan satu fasilitas yang memungkinan untuk menggunakan suatu perubah yang disebut

Lebih terperinci

KONSEP POINTER DAN LINKED LIST

KONSEP POINTER DAN LINKED LIST Pertemuan 4 KONSEP POINTER DAN LINKED LIST Untuk mengolah data yang banyaknya tidak bisa ditentukan sebelumnya, maka disediakan satu fasilitas yang memungkinan untuk menggunakan suatu perubah yang disebut

Lebih terperinci

STRUKTUR DATA POKOK BAHASAN - 7 STACK ( TUMPUKAN )

STRUKTUR DATA POKOK BAHASAN - 7 STACK ( TUMPUKAN ) STRUKTUR DATA POKOK BAHASAN - 7 STACK ( TUMPUKAN ) Oleh : NAZARUDDIN AHMAD, S.T, M.T Referensi : Antonius Rachmat C, S.Kom Design By mytemplate 2013 Stack Stack atau tumpukan adalah suatu struktur yang

Lebih terperinci

STACK (TUMPUKAN) Tumpukan uang koin Tumpukan kotak Tumpukan Buku. Gambar 1. Macam-macam tumpukan

STACK (TUMPUKAN) Tumpukan uang koin Tumpukan kotak Tumpukan Buku. Gambar 1. Macam-macam tumpukan STACK (TUMPUKAN) Stack adalah suatu urutan elemen yang elemennya dapat diambil dan ditambah hanya pada posisi akhir (top) saja. Contoh dalam kehidupan sehari-hari adalah tumpukan piring di sebuah restoran

Lebih terperinci

PENGURUTAN (SORTING) 1. Introduction 2. Bubble Sort 3. Selection Sort 4. Insertion Sort

PENGURUTAN (SORTING) 1. Introduction 2. Bubble Sort 3. Selection Sort 4. Insertion Sort PENGURUTAN (SORTING) 1. Introduction 2. Bubble Sort 3. Selection Sort 4. Insertion Sort INTRODUCTION Pengurutan merupakan proses mengatur sekumpulan obyek menurut aturan atau susunan tertentu. Urutan obyek

Lebih terperinci

KONSEP POINTER DAN LINKED LIST

KONSEP POINTER DAN LINKED LIST Pertemuan 4 KONSEP POINTER DAN LINKED LIST Untuk mengolah data yang banyaknya tidak bisa ditentukan sebelumnya, maka disediakan satu fasilitas yang memungkinan untuk menggunakan suatu perubah yang disebut

Lebih terperinci

KONSEP POINTER DAN LINKED LIST

KONSEP POINTER DAN LINKED LIST Pertemuan 3 KONSEP POINTER DAN LINKED LIST Untuk mengolah data yang banyaknya tidak bisa ditentukan sebelumnya, maka disediakan satu fasilitas yang memungkinan untuk menggunakan suatu perubah yang disebut

Lebih terperinci

SILABUS STRUKTUR DATA ( TIF-104 ) PROGRAM STUDI TEKNIK INFORMATIKA UNIVERSITAS PEMBANGUNAN JAYA TANGERANG SELATAN

SILABUS STRUKTUR DATA ( TIF-104 ) PROGRAM STUDI TEKNIK INFORMATIKA UNIVERSITAS PEMBANGUNAN JAYA TANGERANG SELATAN SILABUS STRUKTUR DATA ( TIF-104 ) PROGRAM STUDI TEKNIK INFORMATIKA UNIVERSITAS PEMBANGUNAN JAYA TANGERANG SELATAN D e s k r i p s i M a t a K u l i a h 1 Deskripsi Mata Kuliah Informasi Umum Mata Kuliah

Lebih terperinci

BAB IX LINKED LIST (SENARAI BERANTAI)

BAB IX LINKED LIST (SENARAI BERANTAI) BAB IX LINKED LIST (SENARAI BERANTAI) Linked list atau biasa disebut senarai berantai adalah suatu kumpulan data yang saling terhubung antar 1 data dengan data berikutnya. Suatu element (disebut dengan

Lebih terperinci

Pertemuan 3. Perubah Dinamis (Dinamic variable) Suatu perubah yang akan dialokasikan hanya pada saat diperlukan, yaitu setelah program dieksekusi.

Pertemuan 3. Perubah Dinamis (Dinamic variable) Suatu perubah yang akan dialokasikan hanya pada saat diperlukan, yaitu setelah program dieksekusi. Pertemuan 3 KONSEP POINTER DAN LINKED LIST Untuk mengolah data yang banyaknya tidak bisa ditentukan sebelumnya, maka disediakan satu fasilitas yang memungkinan untuk menggunakan suatu perubah yang disebut

Lebih terperinci

Larik/ Array int a1, a2, a3, a4, a5;

Larik/ Array int a1, a2, a3, a4, a5; Matakuliah : Struktur Data Versi : 1.0.0 Materi : Larik/ Array Penyaji : Zulkarnaen NS 1 Larik/ Array Variabel digunakan hanya untuk menyimpan 1 (satu) buah nilai dengan tipe data tertentu. Misalnya: int

Lebih terperinci

Data structure :Metode LINK LIST. Kusnawi, S.Kom, M.Eng STMIK AMIKOM Yogyakarta

Data structure :Metode LINK LIST. Kusnawi, S.Kom, M.Eng STMIK AMIKOM Yogyakarta Data structure :Metode LINK LIST Kusnawi, S.Kom, M.Eng STMIK AMIKOM Yogyakarta Pengelolaan Memori : Konsep Dasar Secara Statis, sebagai Contoh penggunaan tipe array menempati lokasi memory yang tetap(

Lebih terperinci

PRAKTIKUM ALGORITMA & PEMROGRAMAN III MODUL_06 Stack (Tumpukan)

PRAKTIKUM ALGORITMA & PEMROGRAMAN III MODUL_06 Stack (Tumpukan) PRAKTIKUM ALGORITMA & PEMROGRAMAN III MODUL_06 Stack (Tumpukan) inslls_05@yahoo.co.id A. Pembahasan Stack Algoritma stack merupakan struktur data yang mengimplementasi dari aturan LIFO (Last In First Out).

Lebih terperinci

QUEUE (ANTREAN) Pertemuan 6 PENGERTIAN QUEUE (ANTREAN)

QUEUE (ANTREAN) Pertemuan 6 PENGERTIAN QUEUE (ANTREAN) Pertemuan 6 QUEUE (ANTREAN) PENGERTIAN QUEUE (ANTREAN) Struktur Data Antrean (Queue) adalah suatu bentuk khusus dari List Linier dengan operasi pemasukan data hanya diperbolehkan pada salah satu sisi,

Lebih terperinci

Struktur Data. PDE - Struktur Data 1

Struktur Data. PDE - Struktur Data 1 Struktur Data Copyright@Ihsan Jatnika PDE - Struktur Data 1 Objektif Mengetahui maksud struktur data dan menjelaskan penggunaannya dalam pemrograman Mengetahui operasi yang terkait dengan struktur data

Lebih terperinci

Algoritma Pemrograman & Struktur Data

Algoritma Pemrograman & Struktur Data MODUL PERKULIAHAN Algoritma Pemrograman & Struktur Data Stack Fakultas Program Studi Tatap Muka Kode MK Disusun Oleh Fakultas Ilmu Informatika Komputer 04 87042 Abstract Penjelasan mengenai stack dan penggunaannya

Lebih terperinci

STRUKTUR DATA (2) Single Linked List

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

Lebih terperinci

Algoritma & Pemrograman #9. by antonius rachmat c, s.kom, m.cs

Algoritma & Pemrograman #9. by antonius rachmat c, s.kom, m.cs Algoritma & Pemrograman #9 by antonius rachmat c, s.kom, m.cs Review Fungsi Scope Variabel Argumen fungsi: formal dan aktual Fungsi by Value Pendahuluan Selama ini kita menggunakan satu variabel untuk

Lebih terperinci

Algoritma dan Struktur Data. Ramos Somya

Algoritma dan Struktur Data. Ramos Somya Algoritma dan Struktur Data Ramos Somya Stack atau tumpukan adalah suatu stuktur data yang penting dalam pemrograman eksekusi suatu fungsi menggunakan prinsip Stact. Bersifat LIFO (Last In First Out) Benda

Lebih terperinci

BAB II STACK (TUMPUKAN)

BAB II STACK (TUMPUKAN) BAB II STACK (TUMPUKAN) Stack merupakan metode dalam menyimpan atau mengambil data ke dan dari memori. Stack dapat dibratkan sebuah tumpukan barang dalam sebuah tempat yang hanya memiliki satu pintu diatsnya

Lebih terperinci

S TA C K Sunu Wibirama

S TA C K Sunu Wibirama STACK Sunu Wibirama Jadwal ujian MID Hari Rabu, 6 April 2011 Pkl. 07.30-09.30 WIB Ruangan E3 Open Book, tapi tidak diperkenankan menggunakan internet, membuka laptop, atau handphone Bahan ujian Logika

Lebih terperinci

SINGLE LINKED LIST NON CIRCULAR (SENARAI BERANTAI TUNGGAL TIDAK BERPUTAR)

SINGLE LINKED LIST NON CIRCULAR (SENARAI BERANTAI TUNGGAL TIDAK BERPUTAR) SINGLE LINKED LIST NON CIRCULAR (SENARAI BERANTAI TUNGGAL TIDAK BERPUTAR) Dilustrasikan sebagai kereta yang mempunyai gerbong-gerbong. Pertama tama kita membuat tipe data baru dari gerbong kereta tersebut.

Lebih terperinci

LAPORAN PRAKTIKUM IX. Oleh:

LAPORAN PRAKTIKUM IX. Oleh: LAPORAN PRAKTIKUM IX LINKED LIST Disusun untuk Memenuhi Matakuliah Praktikum Algoritma Struktur Data Dibimbing oleh Ibu Annisa Puspa Kirana, S. Kom, M. Kom Oleh: Dwitha Fajri Ramadhani 160533611410 Ika

Lebih terperinci

STACK atau TUMPUKAN. Pertemuan 5 STACK (TUMPUKAN)

STACK atau TUMPUKAN. Pertemuan 5 STACK (TUMPUKAN) Pertemuan 5 STACK atau TUMPUKAN STACK (TUMPUKAN) Merupakan bentuk khusus dari Linier List yang pemasukan dan penghapusan elemennya hanya dapat dilakukan pada satu posisi, yaitu posisi akhir dari List (Top)

Lebih terperinci

Searching [pencarian] Algoritma Pemrograman

Searching [pencarian] Algoritma Pemrograman Searching [pencarian] Algoritma Pemrograman mas.anto72@gmail.com 1 Jenis Pencarian Pencarian Internal proses pencarian dilakukan pada memori utama (RAM). Pencarian Eksternal proses pencarian dilakukan

Lebih terperinci

1. Tipe Data Sederhana Hanya dimungkinkan untuk menyimpan sebuah nilai data dalam sebuah variabel Ada 5 macam : int, float, double, char, boolen

1. Tipe Data Sederhana Hanya dimungkinkan untuk menyimpan sebuah nilai data dalam sebuah variabel Ada 5 macam : int, float, double, char, boolen Pokok Bahasan Pengantar Struktur Data Pengertian Struktur Data Struktur data adalah cara menyimpan atau merepresentasikan data di dalam komputer agar bisa dipakai secara efisien Sedangkan data adalah representasi

Lebih terperinci

PROGRAM STUDI S1 SISTEM KOMPUTER UNIVERSITAS DIPONEGORO. Oky Dwi Nurhayati, ST, MT

PROGRAM STUDI S1 SISTEM KOMPUTER UNIVERSITAS DIPONEGORO. Oky Dwi Nurhayati, ST, MT PROGRAM STUDI S SISTEM KOMPUTER UNIVERSITAS DIPONEGORO Oky Dwi Nurhayati, ST, MT email: okydn@undip.ac.id Sorting = pengurutan Sorted = terurut menurut kaidah/aturan tertentu Data pada umumnya disajikan

Lebih terperinci

BAB IX LINKED LIST (SENARAI BERANTAI)

BAB IX LINKED LIST (SENARAI BERANTAI) BAB IX LINKED LIST (SENARAI BERANTAI) Double Linked List Double Linked List adalah suatu linked list yang mempunyai penunjuk yaitu penunjuk ke data sebelumnya dan berikutnya. Perhatikan gambar di bawah

Lebih terperinci

STRUKTUR DATA. By : Sri Rezeki Candra Nursari 2 SKS

STRUKTUR DATA. By : Sri Rezeki Candra Nursari 2 SKS STRUKTUR DATA By : Sri Rezeki Candra Nursari 2 SKS Penilaian : Gasal TA 2013/2014 UAS = 35% UTS = 30% ABSEN = 5% TUGAS = 30% Jumlah = 100% Tugas kirim ke : dosen.it2011@gmail.com Batas Tugas 9 hari setelah

Lebih terperinci

STACK DAN QUEUE (Muhammad Fachrie, STMIK Amikom Yogyakarta)

STACK DAN QUEUE (Muhammad Fachrie, STMIK Amikom Yogyakarta) STACK DAN QUEUE (Muhammad Fachrie, STMIK Amikom Yogyakarta) A. Stack 1. Pendahuluan Stack (tumpukan) dan queue (antrian) sebenarnya adalah sebuah cara dalam mengorganisasikan data-data yang dimiliki. Ibarat

Lebih terperinci

PRAKTIKUM ALGORITMA DAN STRUKTUR DATA MODUL KE-2 STACK DAN QUEUE

PRAKTIKUM ALGORITMA DAN STRUKTUR DATA MODUL KE-2 STACK DAN QUEUE PRAKTIKUM ALGORITMA DAN STRUKTUR DATA MODUL KE-2 STACK DAN QUEUE LABORATORIUM PEMROGRAMAN PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS MUHAMMADIYAH MALANG 2015 I. TUJUAN II. Mahasiswa mampu

Lebih terperinci

Array ARRAY BERDIMENSI SATU. Representasi (Pemetaan) di memori. Lihat gambar dibawah ini, nilai data A (18) dismpan mulai dari alamat 1136 di memori.

Array ARRAY BERDIMENSI SATU. Representasi (Pemetaan) di memori. Lihat gambar dibawah ini, nilai data A (18) dismpan mulai dari alamat 1136 di memori. Array Linear Array (biasa disebut Array) adalah salah satu bentuk struktur data yang bersifat Linear (continue). Nilai data Array harus homogen (bertipe data sama). Array merupakan koleksi data dimana

Lebih terperinci

Tugas Studi Kasus. Linked List SLLNC dengan Head & Tail

Tugas Studi Kasus. Linked List SLLNC dengan Head & Tail Tugas Studi Kasus Linked List SLLNC dengan Head & Tail Diajukan Untuk Memenuhi Salah Satu Tugas Mata Kuliah Algoritma 2 Disusun Oleh : Kelas IS-8 Andrian Ramadhan F. (10512318) M.Tryawan C.N. (10512324)

Lebih terperinci

Algoritma Dan Struktur Data II

Algoritma Dan Struktur Data II Algoritma Dan Struktur Data II List, Stack Putuputraastawa@gmail.com putuastawa.wordpress.com Beberapa Jenis Struktur Data 1. Array 1. Linear List 2. Stack 3. Queue 1. Apa? 2. Bagaimana cara implementasinya?

Lebih terperinci

Cara pertama adalah pada saat deklarasi variabel ditambahkan ke- yword const sebelum nama tipe data seperti

Cara pertama adalah pada saat deklarasi variabel ditambahkan ke- yword const sebelum nama tipe data seperti KONSTANTA Menghitung besaran-besaran fisis dalam bidang fisika memerlukan suatu konstantakonstanta. Bahasa C dan C++ menyediakan tipe data tambahan sehingga variabel yang kita gunakan merupakan konstanta

Lebih terperinci

Operasi File. Chapter 13

Operasi File. Chapter 13 Operasi File Chapter 13 1 Penyimpanan Data ke File Data memungkinkan untuk disimpan di file. Data akan tersimpan secara permanen, dan data bisa dibaca pada kesempatan yang lain. Pemanggilan Prosedur Redirect_Output(Nama_File)

Lebih terperinci

Lab. Teknik Informatika Struktur Data 1

Lab. Teknik Informatika Struktur Data 1 2. POINTER dan SINGLE LINK LIST TUJUAN PRAKTIKUM 1. Praktikan mengetahui tipe struktur data baru yaitu tipe data Pointer. 2. Praktikan menggunakan pointer didalam pembuatan program dan dapat menerapkannya

Lebih terperinci

*Sekumpulan elemen yang diatur secara terurut. *Linear List tidak sama dengan Connected-List

*Sekumpulan elemen yang diatur secara terurut. *Linear List tidak sama dengan Connected-List 1. Array 1. Linear List 2. Stack 3. Queue 1. Apa? 2. Bagaimana cara implementasinya? 2. List 1. Connected List 2. Circular List 3. Doubly-linked List 4. Multi list structure 3. Tree Structure Sekumpulan

Lebih terperinci

SORTING. Struktur Data S1 Sistem Informasi. Ld.Farida

SORTING. Struktur Data S1 Sistem Informasi. Ld.Farida SORTING Struktur Data S1 Sistem Informasi Ld.Farida INTRO Sorting (Pengurutan) diartikan sebagai penyusunan kembali sekumpulan objek ke dalam urutan tertentu Tujuan: Mendapatkan kemudahan dalam pencarian

Lebih terperinci

PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR

PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR 1 PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR Siti Mukaromah, S.Kom TEKNIK PENYAJIAN ALGORITMA Teknik Tulisan Structure English Pseudocode Teknik Gambar Structure Chart HIPO Flowchart 2 PSEUDOCODE Kode

Lebih terperinci

SEQUENTIAL SEARCH 11/11/2010. Sequential Search (Tanpa Variabel Logika) untuk kondisi data tidak terurut

SEQUENTIAL SEARCH 11/11/2010. Sequential Search (Tanpa Variabel Logika) untuk kondisi data tidak terurut Tujuan Searching & Sorting Pertemuan 9-10 Dosen Pembina Danang Junaedi TUJUAN MATERI Setelah mengikuti materi pertemuan ini, mahasiswa diharapkan dapat 1. Menjelaskan dan menggunakan metode pencarian dalam

Lebih terperinci

ALGORITMA DAN STRUKTUR DATA POINTER DAN FUNCTION

ALGORITMA DAN STRUKTUR DATA POINTER DAN FUNCTION ALGORITMA DAN STRUKTUR DATA POINTER DAN FUNCTION POINTER POINTER ADALAH SUATU VARIABEL PENUNJUK, BERISI NILAI YANG MENUNJUK ALAMAT SUATU LOKASI MEMORI TERTENTU. JADI POINTER TIDAK BERISI NILAI DATA, MELAINKAN

Lebih terperinci

Jadi satu simpul di double linked list adalah sebagai berikut : Info. Kiri. Kanan

Jadi satu simpul di double linked list adalah sebagai berikut : Info. Kiri. Kanan II. Double Linked List Double Linked List adalah suatu linked list yang mempunyai penunjuk yaitu penunjuk ke simpul sebelumnya dan ke simpul berikutnya. Perhatikan gambar di bawah ini : 5 Deklarasi secara

Lebih terperinci

LAPORAN PRAKTIKUM RESMI QUEUE

LAPORAN PRAKTIKUM RESMI QUEUE LAPORAN PRAKTIKUM RESMI QUEUE Disusun oleh : Amin Setyaningrum 201301052 Dosen pengampu : Yosef Murya Kusuma Ardhana.S.T., M.Kom JURUSAN SISTEM INFORMASI SEKOLAH TINGGI ILMU KOMPUTER YOS SUDARSO PURWOKERTO

Lebih terperinci

Array (Larik) Modul 7

Array (Larik) Modul 7 Array (Larik) Modul 7 Array adalah suatu tipe data terstuktur yang berupa sejumlah data sejenis (bertipe data sama) yang jumlahnya tetap dan diberi suatu nama tertentu, elemen-elemen array tersusun secara

Lebih terperinci

Struktur Data II. Single Linked List - Non circular

Struktur Data II. Single Linked List - Non circular Struktur Data II Single Linked List - Non circular Linked List?(1) Struktur data, berisi kumpulan data (node) yang tersusun secara sekuensial. Saling sambung-menyambung, dinamis dan terbatas. Linked List

Lebih terperinci

BAB III QUEUE (ANTRIAN)

BAB III QUEUE (ANTRIAN) BAB III QUEUE (ANTRIAN) 3.1 Pengertian Antrian Antrian (Queue) merupakan kumpulan data yang mana penambahan elemen hanya bias dilakukan pada suatu ujung yaitu rear /tail / belakang, dan pengha[usan dilakukan

Lebih terperinci

STRUKTUR DATA POKOK BAHASAN - 8 QUEUE ( ANTRIAN)

STRUKTUR DATA POKOK BAHASAN - 8 QUEUE ( ANTRIAN) STRUKTUR DATA POKOK BAHASAN - 8 QUEUE ( ANTRIAN) Oleh : NAZARUDDIN AHMAD, S.T, M.T Referensi : Antonius Rachmat C, S.Kom Andri Heryamdi Design By mytemplate 2013 Queue Queue atau antrian adalah barisan

Lebih terperinci

IX. Implementasi ADT : Stacks & Queues. Operasi dasar Contoh kegunaan Implementasi Array-based dan linked list-based

IX. Implementasi ADT : Stacks & Queues. Operasi dasar Contoh kegunaan Implementasi Array-based dan linked list-based IX. Implementasi ADT : Stacks & Queues STRUKTUR DATA 1 Outline ADT Stacks Operasi dasar Contoh kegunaan Implementasi Array-based dan linked list-based ADT Queues Operasi dasar Contoh kegunaan Implementasi

Lebih terperinci

STACK (Tumpukan) Tumpukan Koin. Tumpukan Kotak

STACK (Tumpukan) Tumpukan Koin. Tumpukan Kotak STACK (Tumpukan) Tumpukan Koin Tumpukan Kotak Defenisi : Secara sederhana, tumpukan bisa diartikan sebagai suatu kumpulan data yang seolah-olah ada data yang diletakan diatas data yang lain. Satu hal yang

Lebih terperinci

TIF 4201 Algoritma Dan Struktur Data

TIF 4201 Algoritma Dan Struktur Data TIF 4201 Algoritma Dan Struktur Data Abstract Data Type Teknik Informatika Universitas Brawijaya Semester Gasal 2010/2011 1 TIPE DATA Terdapat beberapa macam tipe data. Misalnya int, double, string, dll.

Lebih terperinci

Sorting adalah proses mengatur sekumpulan objek menurut aturan atau susunan tertentu. Urutan objek tersebut dapat menaik (ascending = dari data kecil

Sorting adalah proses mengatur sekumpulan objek menurut aturan atau susunan tertentu. Urutan objek tersebut dapat menaik (ascending = dari data kecil Sorting adalah proses mengatur sekumpulan objek menurut aturan atau susunan tertentu. Urutan objek tersebut dapat menaik (ascending = dari data kecil ke data lebih besar) atau menurun (descending = dari

Lebih terperinci

PRAKTIKUM STRUKTUR DATA QUEUE. SULIDAR FITRI, M.Sc

PRAKTIKUM STRUKTUR DATA QUEUE. SULIDAR FITRI, M.Sc PRAKTIKUM STRUKTUR DATA QUEUE SULIDAR FITRI, M.Sc QUEUE Secara harafiah, queue berarti antrian, queue merupakan salah satu contoh aplikasi dari pembuatan double linked list yang cukup sering kita temui

Lebih terperinci

Modul 8 SORTING (PENGURUTAN)

Modul 8 SORTING (PENGURUTAN) Modul 8 SORTING (PENGURUTAN) 1. Tujuan Instruksional Umum a. Mahasiswa mampu melakukan perancangan aplikasi menggunakan Struktur Sorting ( pengurutan ) b. Mahasiswa mampu melakukan analisis pada algoritma

Lebih terperinci

Modul Praktikum Algoritma dan Struktur Data

Modul Praktikum Algoritma dan Struktur Data MODUL IV STACK A. TUJUAN 1. Memahami terminologi yang terkait dengan struktur data stack. 2. Memahami operasi-operasi yang ada dalam stack. 3. Dapat mengidentifikasi permasalahan-permasalahan pemrograman

Lebih terperinci

//membuat sebuah tipe data baru yang terdiri dari. //field data bertipe integer //field next merupakan pointer dari list

//membuat sebuah tipe data baru yang terdiri dari. //field data bertipe integer //field next merupakan pointer dari list SENARAI BERANTAI TUNGGAL TIDAK BERPUTAR (SINGLE LINKED LIST NON CIRCULAR) DEKLARASI LINKED LIST Sebelum membuat sebuah senarai (Link List) kita harus mendeklarasikan tipe data dan pointer yang akan kita

Lebih terperinci

Pertemuan 4 ELEMEN-ELEMEN BAHASA PEMROGRAMAN

Pertemuan 4 ELEMEN-ELEMEN BAHASA PEMROGRAMAN Pertemuan 4 ELEMEN-ELEMEN BAHASA PEMROGRAMAN I. Elemen-Elemen Dalam Bahasa Pemrograman Berikut adalah elemen-elemen pada bahasa pemrograman: Berikut adalah element-element pada bahasa pemrograman: 1. Aturan

Lebih terperinci

Algoritma dan Struktur Data. Ramos Somya

Algoritma dan Struktur Data. Ramos Somya Algoritma dan Struktur Data Ramos Somya Penggunaan record dalam jumlah yang banyak alokasi memory konvensional tidak bisa diandalkan. Misal kita akan bekerja dengan file yang menyimpan sangat banyak record,

Lebih terperinci

Stack. Gambar 1.1 Stack

Stack. Gambar 1.1 Stack Stack Stack adalah struktur data yang memiliki sifat last in first out. Struktur dari stack yang dapat kita lihat sehari-hari adalah : tumpukan (lihat gambar 1.1) Gambar 1.1 Stack Terdapat 2 (dua) operasi

Lebih terperinci

04. Single Linked List

04. Single Linked List 04. Single Linked List ARNA FARIZA YULIANA SETIOWATI Capaian Pembelajaran 1. Mahasiswa mengerti konsep alokasi memori secara dinamis menggunakan pointer. 2. Mahasiswa mengerti konsep single linked list

Lebih terperinci

MODUL IV STACK A. TUJUAN

MODUL IV STACK A. TUJUAN MODUL IV STACK A. TUJUAN 1. Memahami terminologi yang terkait dengan struktur data stack. 2. Memahami operasi-operasi yang ada dalam stack. 3. Dapat mengidentifikasi permasalahan-permasalahan pemrograman

Lebih terperinci

Pengenalan C++ Oleh : Dewi Sartika

Pengenalan C++ Oleh : Dewi Sartika Pengenalan C++ Oleh : Dewi Sartika Pendahuluan Bahasa Pemrograman C++ merupakan bahasa tingkat menengah dimana bahasa ini didasarkan atas bahasa C, keistimewaan dari bahasa C++ adalah bahasa ini mendukung

Lebih terperinci

Single Linked List (1)

Single Linked List (1) Praktikum 5 Single Linked List (1) A. TUJUAN PEMBELAJARAN Setelah mempelajari materi dalam bab ini, mahasiswa diharapkan mampu: 1. Memahami konsep membangun single linked list 2. Memahami konsep operasi

Lebih terperinci

Algoritma dan Struktur Data. Ramos Somya, S.Kom., M.Cs.

Algoritma dan Struktur Data. Ramos Somya, S.Kom., M.Cs. Algoritma dan Struktur Data Ramos Somya, S.Kom., M.Cs. Penggunaan record dalam jumlah yang banyak alokasi memory konvensional tidak bisa diandalkan. Misal kita akan bekerja dengan file yang menyimpan sangat

Lebih terperinci

ALGORITMA DAN STRUKTUR DATA

ALGORITMA DAN STRUKTUR DATA Modul ke: 03 Fitrianingsih, Fakultas FASILKOM ALGORITMA DAN STRUKTUR DATA OLEH : Skom., MMSI Program Studi Sistem Informasi Bagian Isi POINTER POINTER DAN ADDRESS POINTER DAN FUNCTION LINKED LIST ALGORITMA

Lebih terperinci

BAB IV Antrian(Queue)

BAB IV Antrian(Queue) BAB IV Antrian(Queue) Tujuan 1. Memahami berbagai cara untuk merepresentasikan queue secara sekuensial maupun dengan menggunakan linked list 2. Memahami implementasi queue dalam menyelesaikan sebuah permasalahan

Lebih terperinci

MODUL PRAKTIKUM STRUKTUR DATA

MODUL PRAKTIKUM STRUKTUR DATA MODUL PRAKTIKUM STRUKTUR DATA JAKARTA 2018 Page 1 DAFTAR ISI MODUL I TIPE DATA ARRAY 1 MODUL II STACK 4 MODUL III SEARCHING. 10 MODUL IV SORTING.. 13 MODUL V POINTER... 17 MODUL VI LINKED LIST 23 Page

Lebih terperinci

Pengurutan (Sorting) Algoritma Pemrograman

Pengurutan (Sorting) Algoritma Pemrograman Pengurutan (Sorting) Algoritma Pemrograman mas.anto72@gmail.com 1 Definisi Sorting /pengurutan proses mengatur sekumpulan obyek menurut urutan atau susunan tertentu. Bentuk susunan/urutan : Ascending menaik/membesar

Lebih terperinci

Pengurutan (Sorting) Keuntungan Data Terurut. Pengurutan Terbagi Dua Kelompok:

Pengurutan (Sorting) Keuntungan Data Terurut. Pengurutan Terbagi Dua Kelompok: Pengurutan (Sorting) Pengurutan adalah proses mengatur sekumpulan obyek menurut urutan atau susunan tertentu. Urutan obyek tersebut dapat menaik atau menurun. Bila N obyek disimpan dalam larik L, maka

Lebih terperinci

STACK dan QUEUE MODUL PRAKTIKUM STRUKTUR DATA 09 UNIVERSITAS KRISTEN DUTA WACANA. Daftar Isi: Stack dan Queue. Latihan soal. Guided.

STACK dan QUEUE MODUL PRAKTIKUM STRUKTUR DATA 09 UNIVERSITAS KRISTEN DUTA WACANA. Daftar Isi: Stack dan Queue. Latihan soal. Guided. STACK dan QUEUE Daftar Isi: Stack dan Queue Latihan soal Guided Unguided Take home Kunci jawaban soal guided MODUL PRAKTIKUM STRUKTUR DATA 09 UNIVERSITAS KRISTEN DUTA WACANA PENGANTAR Definisi Stack disebut

Lebih terperinci

E STRUKTUR DATA & E PRAKTIK STRUKTUR DATA. Pointer & Function. Alfa Faridh Suni, S.T., M.T. PTIK

E STRUKTUR DATA & E PRAKTIK STRUKTUR DATA. Pointer & Function. Alfa Faridh Suni, S.T., M.T. PTIK E3024015 - STRUKTUR DATA & E3024016 PRAKTIK STRUKTUR DATA Pointer & Function Alfa Faridh Suni, S.T., M.T. PTIK - 2014 Pointer Pointer adalah suatu variabel penunjuk, berisi nilai yang menunjuk alamat suatu

Lebih terperinci

Praktikum 7. Pengurutan (Sorting) Insertion Sort, Selection Sort POKOK BAHASAN: TUJUAN BELAJAR: DASAR TEORI:

Praktikum 7. Pengurutan (Sorting) Insertion Sort, Selection Sort POKOK BAHASAN: TUJUAN BELAJAR: DASAR TEORI: Praktikum 7 Pengurutan (Sorting) Insertion Sort, Selection Sort POKOK BAHASAN: Konsep pengurutan dengan insertion sort dan selection sort Struktur data proses pengurutan Implementasi algoritma pengurutan

Lebih terperinci

Algoritma dan Struktur Data

Algoritma dan Struktur Data Modul Praktikum Algoritma dan Struktur Data Double Linked List Tenia Wahyuningrum, S.Kom., MT Sisilia Thya Safitri, ST., MT ST3 Telkom Purwokerto Jl. DI Panjaitan 128 Purwokerto * Untuk kalangan sendiri

Lebih terperinci

STRUKTUR DATA. Pengajar. Jaidan Jauhari, M.T. Alamat

STRUKTUR DATA. Pengajar. Jaidan Jauhari, M.T. Alamat STRUKTUR DATA Pengajar Jaidan Jauhari, M.T. Alamat Email jaidan_j@ilkom.unsri.ac.id jaidan_j@yahoo.com Disarikan Dari Berbagai Sumber, Terutama Dari Diktat Struktur Data Informatika ITB Karangan Dr. Inggriani

Lebih terperinci

BAB VI ARRAY PADA PEMROGRAMAN JAVA

BAB VI ARRAY PADA PEMROGRAMAN JAVA BAB VI ARRAY PADA PEMROGRAMAN JAVA 6.1. Kompetensi Dasar Kompetensi dasar secara umum agar mahasiswa memahami menggunakan array pada bahasa pemrograman Java. Kompetensi secara khusus : a. Penggunaan pendeklarasian

Lebih terperinci

STACK (TUMPUKAN) & QUEUE (ANTRIAN) Altien Jonathan Rindengan, S.Si., M.Kom.

STACK (TUMPUKAN) & QUEUE (ANTRIAN) Altien Jonathan Rindengan, S.Si., M.Kom. STACK (TUMPUKAN) & QUEUE (ANTRIAN) Altien Jonathan Rindengan, S.Si., M.Kom. Stack Stack (tumpukan) : list (urutan) dimana penambahan dan pengambilan elemen hanya dilakukan pada satu sisi yang disebut top

Lebih terperinci

KUM 5 IMPLEMENTASI QUEUE

KUM 5 IMPLEMENTASI QUEUE PRAKTIKUM KUM 5 IMPLEMENTASI QUEUE TUJUAN PEMBELAJARAN: 1. Mengimplementasikan struktur data Queue menggunakan array. 2. Mampu mengimplementasikan struktur data Queue dengan Linked List 3. Mampu memanfaatkan

Lebih terperinci

Pengenalan Algoritma & Struktur Data. Pertemuan ke-1

Pengenalan Algoritma & Struktur Data. Pertemuan ke-1 Pengenalan Algoritma & Struktur Data Pertemuan ke-1 Apa itu Struktur Data? PROGRAM ALGO RITMA STRUKTUR DATA Algoritma.. deskripsi langkah-langkah penyelesaian masalah yang tersusun secara logis 1. Ditulis

Lebih terperinci

Menginisialisasi array sama dengan memberikan nilai awal array pada saat didefinisikan. int nilai[6] = {8,7,5,6,4,3};

Menginisialisasi array sama dengan memberikan nilai awal array pada saat didefinisikan. int nilai[6] = {8,7,5,6,4,3}; ARRAY Array adalah suatu tipe data terstruktur yang berupa sejumlah data sejenis (bertipe data sama) yang jumlahnya tetap dan diberi suatu nama tertentu. Array dapat berupa array 1 dimensi, 2 dimensi,

Lebih terperinci

Yaitu proses pengaturan sekumpulan objek menurut urutan atau susunan tertentu Acuan pengurutan dibedakan menjadi :

Yaitu proses pengaturan sekumpulan objek menurut urutan atau susunan tertentu Acuan pengurutan dibedakan menjadi : PENGURUTAN Yaitu proses pengaturan sekumpulan objek menurut urutan atau susunan tertentu Acuan pengurutan dibedakan menjadi : 1. Ascending / menaik Syarat : L[1] L[2] L[3] L[N] 2. Descending / menurun

Lebih terperinci