MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA GENERIC DAN IMPLEMENTASI COMPARETO()
|
|
- Herman Dharmawijaya
- 6 tahun lalu
- Tontonan:
Transkripsi
1 Deskripsi Singkat MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA GENERIC DAN IMPLEMENTASI COMPARETO() Praktikum 1 dan 2 yang telah anda lakukan melibatkan tipe data primitif. Contohnya class ArrayTakTerurut yang menyimpan data bertipe double. Sehingga jika ingin menyimpan tipe data lain, berarti kita harus membuat class Array yang lain lagi. Padahal di dalam Java, selain delapan tipe data primitif, juga terdapat tipe data berupa object. Oleh karena itu class yang bersifat collections (koleksi) diharapkan dapat digunakan untuk menyimpan berbagai macam tipe data. Sehingga collections tersebut dapat menggunakan super class nenek moyang yaitu Object. Namun penggunaan Object sendiri menjadikan data yang disimpan menjadi sangat bebas/flexible. Sehingga saat mengakses datanya akan memerlukan operasi casting. Generic dapat menyelesaikan masalah tersebut sebab generic menyediakan abstraksi pada tipe data. Bermakna tipe data yang dibuat generic sehingga dapat menerima tipe data apapun, namun pada satu waktu hanya satu jenis tipe data saja yang dapat digunakan. Tujuan 1. Membuat class collection yang generic 2. Menggunakan method compareto() pada interface Comparable 3. Memanfaatkan method compareto() pada algoritma searching dan sorting Materi 1 : Membuat Class Collection Biasa dan yang Generic Class yang bersifat collection atau koleksi bermakna dapat digunakan untuk menyimpan data. Agar data yang disimpan bisa bermacam-macam maka digunakanlah data bertipe Object. Berikut kode programnya yang juga menyertakan method main yang mengecek class Store tersebut. public class Store // instance variables - replace the example below with your own private Object value; // data public Store () value = null; public Object getvalue() return value; // set v as the new stored value public void setvalue(object v) value = v;
2 public String tostring() return "value = " + value; public static void main(string []ar) Store s1 = new Store(); s1.setvalue("hello"); String msg1 = (String) s1.getvalue(); Store s2 = new Store(); s2.setvalue( new Integer(5) ); Integer t2 = (Integer) s2.getvalue(); String msg2 = s2.getvalue(); //? Integer t1 = (Integer) s1.getvalue(); Apakah error yang muncul? Mengapa error tersebut bisa muncul? Class Object memang dapat menampung semua class dalam Java. Namun tetap saja memprosesnya perlu menggunakan casting. Sehingga jika salah casting akan menimbulkan error compiler dan runtime (exception). Untuk menyelesaikan masalah tersebut, kita akan menggunakan collection yang generic. Generic ditandakan dengan simbol yang dibatasi oleh kurung siku (contoh <T>). Class generic jika digunakan haruslah dikhususkan untuk tipe data tertentu sehingga tidak perlu proses casting untuk mengakses unsur collection. Berikut contoh class Store yang telah diubah menjadi generic. public class StoreGeneric <T> // instance variables - replace the example below with your own private T value; // data of type/class T public StoreGeneric () value = null; // return the stored value as type T public T getvalue() return value; // update the stored value public void setvalue(t v) value = v; public String tostring() return "Value = " + value; public static void main (String []ar)
3 StoreGeneric<String> ss = new StoreGeneric<String>(); ss.setvalue("hello"); String msg = ss.getvalue(); StoreGeneric<Integer> st = new StoreGeneric<Integer>(); st.setvalue( new Integer(10) ); Integer t = st.getvalue(); String msg2 = ss.getvalue(); // akan menghasilkan warning compiler //Integer t1 = ss.getvalue(); Beberapa tipe parameter yang umum digunakan pada generic: T - Type E - Element K - Key N - Number V - Value Class StoreGeneric sama seperti class Store yaitu dapat menyimpan tipe data apapun. Namun class StoreGeneric saat digunakan haruslah dikhususkan untuk tipe data tertentu. Seperti objek ss yang telah dikhususkan hanya untuk menyimpan data String. Sedangkan objek st telah dikhususkan untuk menyimpan data Integer. Dengan menggunakan generic maka kita tidak perlu lagi melakukan casting. Pada kode program di atas, coba hilangkan simbol komen pada Integer t1 = ss.getvalue(); Compile kembali lalu perhatikant warning/error yang muncul. Mengapa muncul warning compiler? Materi 2 : Interface yang Generic Selain class, method dan interface juga dapat dibuat generic. Method yang generic telah anda gunakan secara tidak langsung pada class StoreGeneric. Membuat interface generic juga tidak terlalu jauh berbeda dengan class generic yaitu menggunakan simbol <>. Berikut kode interface Accumulator yang dibuat generic. public interface Accumulator<T> public void add(t v);
4 Interface Accumulator di atas akan diimplementasikan pada class berikut ini. public class AccumulatorNumber implements Accumulator<Number> private double total; public AccumulatorNumber () total = 0.0; public double gettotal() return total; // add v to total as a double public void add(number v) total = total + v.doublevalue(); Kemudian kita buat class untuk menguji interface Accumulator di atas. Kode programnya di bawah. public class UsingAccumulator public static void main(string []ar) Integer[] intarr = 7, 1, 9, 3, 8, 4; AccumulatorNumber accnumber = new AccumulatorNumber(); for (int i = 0; i < intarr.length; i++) accnumber.add(intarr[i]); System.out.println("Numeric total is " +accnumber.gettotal()); Materi 3 : Method compareto() di dalam Interface Comparable Algoritma searching dan sorting yang telah kita buat pada praktikum 1 dan 2 dikhususkan untuk tipe data primitif. Jika kita ingin membandingkan tipe data berupa class tertentu, apalagi jika menggunakan generic, maka kita perlu cara yang khusus. Salah satu cara yang dapat digunakan adalah dengan menggunakan method compareto() yang ada di dalam interface Comparable. Interface Comparable ada dalam Java API dan merupakan cara standar untuk membandingkan object. Method compareto() akan mengembalikan nilai negatif, 0 dan positif. obj.compareto(item) < 0 ketika obj < item obj.compareto(item) == 0 ketika obj == item obj.compareto(item) > 0 ketika obj > item Berikut contoh kode programnya.
5 public class Employee implements Comparable<Employee> protected String empname; protected String empssn; public Employee(String empname, String empssn) this.empname = empname; this.empssn = empssn; public void setname(string empname) this.empname = empname; public String tostring() return "Name: " + empname + '\n' + "SS#: " + empssn; public String payrollcheck() return ""; public int compareto(employee obj) return empssn.compareto(obj.empssn); Kemudian kita buat class SalaryEmployee yang merupakan turunan dari class Employee. import java.text.decimalformat; // salaried employee "is an" employee with a fixed weekly salary public class SalaryEmployee extends Employee // new attributes that extends attributes in Employee private double salary; public SalaryEmployee(String empname, String empssn, double salary) // call the Employee superclass constructor super(empname, empssn); this.salary = salary; // accessor method to return the salary public double getsalary() return salary; // mutator method to update the salary public void setsalary(double sal) salary = sal; // return a formated string with salaried employee information
6 // including name, ssn, status (salaried) and monthly pay public String tostring() DecimalFormat fmt = new DecimalFormat("#.00"); return super.tostring() + '\n' + "Status: Salary" + '\n' + "Salary: $" + fmt.format(salary); // cut a payroll check with the employee name, social security // number in parentheses, and salary public String payrollcheck() DecimalFormat fmt = new DecimalFormat("#.00"); return "Pay " + empname + " (" + empssn + ") $" + fmt.format(salary); Materi 4 : Penggunaan Method compareto() pada Algoritma Searching dan Sorting Class Arrays berikut ini merupakan versi collection yang memanfaatkan generic dan interface Comparable yang memiliki method compareto(). public class Arrays // assure that the programmer cannot instantiate // an Arrays object private Arrays() / Sorts an array of integer values in ascending order using the selection sort algorithm.<p> This algorithm has O(nn) runtime efficiency for best, worst, and average arr the array to be sorted. / public static void selectionsort(int[] arr) int smallindex; // index of smallest element in the sublist int pass, j, n = arr.length; int temp; // pass has the range 0 to n-2 for (pass = 0; pass < n-1; pass++)
7 // scan the sublist starting at index pass smallindex = pass; // j traverses the sublist arr[pass+1] to arr[n-1] for (j = pass+1; j < n; j++) // if smaller element found, assign smallindex // to that position if (arr[j] < arr[smallindex]) smallindex = j; // swap the next smallest element into arr[pass] temp = arr[pass]; arr[pass] = arr[smallindex]; arr[smallindex] = temp; / A generic version of the selection sort algorithm that orders an array of elements of type T in ascending order. The algorithm requires that the generic type implements the Comparable interface. This algorithm has O(nn) runtime efficiency for best, worst, and average arr the array to be sorted. / public static <T extends Comparable<? super T>> void selectionsort(t[] arr) int smallindex; // index of smallest element in the sublist int pass, j, n = arr.length; T temp; // pass has the range 0 to n-2 for (pass = 0; pass < n-1; pass++) // scan the sublist starting at index pass smallindex = pass; // j traverses the sublist arr[pass+1] to arr[n-1] for (j = pass+1; j < n; j++) // if smaller element found, assign smallindex // to that position if (arr[j].compareto(arr[smallindex]) < 0) smallindex = j; // swap the next smallest element into arr[pass] temp = arr[pass]; arr[pass] = arr[smallindex]; arr[smallindex] = temp;
8 / Searches the sublist [first, last) in an integer array for the specified target value using the sequential search algorithm; the return value is the first occurrence of a match or -1 if not match is arr the integer array to be first starting index for the last upper bound for the target the search key to locate in the index of the search key, if it is contained in the list; otherwise, -1. / public static int seqsearch(int[] arr, int first, int last, int target) // scan indices in the range first <= i < last; // return the index // indicating the position if a match occurs; // otherwise return -1 for (int i = first; i < last; i++) if (arr[i] == target) return i; // no return yet if match is not found; return -1 return -1; // i = last, thus no match / Searches the sublist [first, last) in a specified array of objects for the specified target value using the sequential search algorithm; comparison is made using the equals() method; the return value is the first occurrence of a match or -1 if not match is arr the array to be first starting index for the last upper bound for the target the search key to locate in the index of the search key, if it is contained in the list; otherwise, -1. / public static int seqsearch(object[] arr, int first, int last, Object target) // scan indices in the range first <= i < last; // return the index // indicating the position if a match occurs;
9 // otherwise return -1 for (int i = first; i < last; i++) if (arr[i].equals(target)) return i; // no return yet if match is not found; return -1 return -1; // i = last, thus no match / Searches an integer array for the specified target value using the binary search algorithm. The array must be sorted into ascending arr the integer array to be first starting index for the last upper bound for the target the search key to locate in the index of the search key, if it is contained in the list;otherwise, -1. / public static int binsearch( int[] arr, int first, int last, int target) int mid; // index of the midpoint int midvalue; // object that is assigned arr[mid] int origlast = last; // save original value of last while (first < last) // test for nonempty sublist mid = (first+last)/2; midvalue = arr[mid]; if (target == midvalue) return mid; // have a match // determine which sublist to search else if (target < midvalue) last = mid; // search lower sublist. reset last else first = mid+1; //search upper sublist.reset first return -1; // target not found / Searches the sublist [first, last) in a specified array of objects for the specified target value using the binary search algorithm; the generic type T must implement the Comparable interface with the array sorted in
10 ascending order; comparison is made using the <tt>equals()</tt> method; the return value is the first occurrence of a match or -1 if not match is found. search arr the integer array to be first starting index for the last upper bound for the target the search key to locate in the index of the search key, if it is contained in the list; otherwise, -1. / public static <T extends Comparable<? super T>> int binsearch(t[] arr, int first, int last, T target) int mid; // index of the midpoint T midvalue; // object that is assigned arr[mid] int origlast = last; // save original value of last while (first < last) // test for nonempty sublist mid = (first+last)/2; midvalue = arr[mid]; if (target.compareto(midvalue) == 0) return mid; // have a match // determine which sublist to search else if (target.compareto(midvalue) < 0) last = mid; // search lower sublist. reset last else first = mid+1; // search upper sublist. reset first return -1; // target not found / Returns a string that displays the elements in the array in sequential order. The description is a comma separated list of elements enclosed in string that contains the list of elements in the array. / // returns a string that represents an array of objects public static String tostring(object[] arr) if (arr == null) return "null"; else if (arr.length == 0) return "[]"; // start with the left bracket String str = "[" + arr[0];
11 // append all but the last element, separating items with a comma // polymorphism calls tostring() for the array type for (int i = 1; i < arr.length; i++) str += ", " + arr[i]; str += "]"; return str; Berikutnya kita buat class GenericSorting yang akan mengurutkan data apa saja yang ingin diurutkan, asalkan class data tersebut telah meng-implement Comparable dan override method compareto(). public class GenericSorting public static void main(string []ar) Integer[] intarr = 40, 70, 50, 30; SalaryEmployee[] emp = new SalaryEmployee("Dunn, Moira"," ",800), new SalaryEmployee("Garcia, Avey", " ",1200), new SalaryEmployee("Ye, Don", " ",2000); Arrays.selectionSort(intArr); System.out.println("Sorted integers: " +Arrays.toString(intArr)); Arrays.selectionSort(emp); for (int i=0; i < emp.length; i++) System.out.println(emp[i].payrollCheck()); LATIHAN 1 Buat semua class-class yang ada dalam praktikum ini. Apakah yang dapat anda simpulkan? SOAL-SOAL 1.
Politeknik Elektronika Negeri Surabaya
PRAKTIKUM 10 ALGORITMA PENGURUTAN (SELECTION SORT) A. TUJUAN PEMBELAJARAN 1. Memahami step by step algoritma pengurutan selection sort. 2. Mampu mengimplementasikan algoritma pengurutan selection sort
Lebih terperinciPoliteknik Elektronika Negeri Surabaya
PRAKTIKUM 11 ALGORITMA PENGURUTAN (BUBBLE SORT) A. TUJUAN PEMBELAJARAN 1. Memahami step by step algoritma pengurutan bubble sort. 2. Mampu mengimplementasikan algoritma pengurutan bubble sort dengan berbagai
Lebih terperinciGambar 1. Langkah-langkah pengurutan metode Insertion Sort (1)
PRAKTIKUM 9-10 ALGORITMA PENGURUTAN (INSERTION DAN SELECTION) A. TUJUAN PEMBELAJARAN 1. Memahami mengenai algoritma pengurutan insertion sort dan selection sort. 2. Mampu mengimplementasikan algoritma
Lebih terperinciPoliteknik Elektronika Negeri Surabaya
PRAKTIKUM 12 ALGORITMA PENGURUTAN (SHELL SORT) A. TUJUAN PEMBELAJARAN 1. Memahami step by step algoritma pengurutan shell sort. 2. Mampu mengimplementasikan algoritma pengurutan shell sort dengan berbagai
Lebih terperinciMODUL PRAKTIKUM BASIS DATA PENGENALAN STRUKTUR DATA DAN KOMPLEKSITAS WAKTU
Deskripsi Singkat MODUL PRAKTIKUM BASIS DATA PENGENALAN STRUKTUR DATA DAN KOMPLEKSITAS WAKTU Praktikum struktur data dan algoritma adalah praktikum yang mendukung mata kuliah struktur data dan algoritma.
Lebih terperinciPoliteknik Elektronika Negeri Surabaya
PRAKTIKUM 9 ALGORITMA PENGURUTAN (INSERTION SORT) A. TUJUAN PEMBELAJARAN 1. Memahami step by step algoritma pengurutan insertion sort. 2. Mampu mengimplementasikan algoritma pengurutan insertion sort dengan
Lebih terperinciPoliteknik Elektronika Negeri Surabaya
PRAKTIKUM 13 ALGORITMA PENGURUTAN (QUICK SORT) A. TUJUAN PEMBELAJARAN 1. Memahami step by step algoritma pengurutan quick sort. 2. Mampu mengimplementasikan algoritma pengurutan quick sort dengan berbagai
Lebih terperinciObjectives. Struktur Data & Algoritme (Data Structures & Algorithms) Sort. Outline. Bubble Sort: idea. Bubble Sort. Sorting
Struktur Data & Algoritme (Data Structures & Algorithms) Objectives Memahami beberapa algoritme sorting dan dapat menganalisa kompleksitas-nya Sorting Denny (denny@cs.ui.ac.id) Suryana Setiawan (setiawan@cs.ui.ac.id)
Lebih terperinciOutline STRUKTUR DATA. VII. Sorting
STRUKTUR DATA VII. Sorting 1 Outline Beberapa algoritma untuk melakukan sorting: Bubble sort Selection sort Insertion sort Shell sort Merge sort Quick sort Untuk masing-masing algoritma: Ide dasar Contoh
Lebih terperinciGENERICS. Yuliana Setiowati. Politeknik Elektronika Negeri Surabaya. Topik
GENERICS Yuliana Setiowati Topik Definisi Generics Non Generic Class Cara mendeklarasikan Type Generics Aturan Penamaan Type Parameter Subtyping Class Generic dengan Dua Type Parameter Generics pada List
Lebih terperinciSorting. Struktur Data dan Algoritma. Suryana Setiawan, Ruli Manurung & Ade Azurat (acknowledgments: Denny) Fasilkom UI
Struktur Data dan Algoritma Sorting Suryana Setiawan, Ruli Manurung & Ade Azurat (acknowledgments: Denny) Fasilkom UI SUR HMM AA Fasilkom UI - IKI20100/ IKI80110P 2009/2010 Ganjil Minggu 5 Outline Beberapa
Lebih terperinciMODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA STACK
MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA STACK Deskripsi Singkat merupakan bentuk struktur data seperti tumpukan yang memiliki konsep Last In First Out (LIFO). Bermakna data yang terakhir masuk merupakan
Lebih terperinci1. Keyword mana yang memiliki fungsi sama dengan keyword this dan menyediakan reference ke atribut turunan dari objek? super
Your browser does not support inline frames or is currently configured not to display inline frames. Waktu Sisa : 1:58:53 1. Keyword mana yang memiliki fungsi sama dengan keyword this dan menyediakan reference
Lebih terperinciApa yang menjadi output potongan kode diatas? Error karena tidak ada String yang di-passing kedalam konstruktor Bapak
Waktu Sisa : 0:59:57 1. Apa yang menjadi output potongan kode diatas? Error karena tidak ada String yang di-passing kedalam konstruktor Bapak Output: Bapak null Anak Error karena constructor Bapak(String
Lebih terperinciPemrograman Berorientasi. Array dan Collections
Pemrograman Berorientasi Obyek Array dan Collections Part One: Array Array Tipe data yang dapat menampung lebih dari satu nilai yang bertipe sama Menggunakan indeks untuk pengaksesannya Dapat diakses secara
Lebih terperinciTes Asisten Praktikum Alpro Lanjut
Tes Asisten Praktikum Alpro Lanjut Tingkat kesulitan: Mudah Estimasi waktu pengerjaan: 90 menit Buatlah sebuah program yang akan meminta input n (1-300), dan menampilkan hasil penjumlahan dari setiap pembagi
Lebih terperinci1. Manakah jawaban yang benar,pada saat Anda mengcompile dan menjalankan class berikut ini:
1. Manakah jawaban yang benar,pada saat Anda mengcompile dan menjalankan class berikut ini: Program dapat di-compile dan output-nya adalah 5 Program dapat di-compile dan output-nya adalah 6 Program akan
Lebih terperinciPoliteknik Elektronika Negeri Surabaya
PRAKTIKUM 13-14 ALGORITMA PENGURUTAN (QUICK DAN MERGE) A. TUJUAN PEMBELAJARAN 1. Memahami mengenai algoritma pengurutan quick sort dan merge sort. 2. Mampu mengimplementasikan algoritma pengurutan quick
Lebih terperinciBoxing & AutoBoxing Java Collection Framework. Collection List Map Set. Generics vs Inheritance
Boxing & AutoBoxing Java Collection Framework Collection List Map Set Generics vs Inheritance 2 Primitive types (int, float, double, boolean etc.) do not inherit Object We can use wrapper classes encapsulate
Lebih terperinciOverriding. Subclass yang berusaha memodifikasi tingkah laku yang diwarisi dari superclass. Tujuan: subclass memiliki tingkah laku yang lebih
Overriding, Overloading, Polymorphism Pertemuan 10 Pemrograman Berbasis Obyek Oleh Tita Karlita Topik Overriding Overloading Constructor overloading Polymorphism Virtual Method Invocation Polymorphic arguments
Lebih terperinciCollections. Collections Framework
Collections Collections Framework Dikenalkan pada Java 2 SDK. Collection sudah ada sejak JDK 1.0 Hashtable Vector 1 Collections Collection adalah suatu obyek yang bisa digunakan untuk menyimpan sekumpulan
Lebih terperinci03/04/2018. Collection set List Map. Pemrograman Berorientasi Object
Pemrograman Berorientasi Object Collection set List Map 1 2 Menyimpan data dan operasi-operasi untuk mengakses dan memanipulasi data. Java Collection Framework merupakan framework struktur data. JCF mendukung
Lebih terperinciPemrograman Berbasis Objek. Collections. Politeknik Elektronika Negeri Surabaya
Collections Collections Framework Dikenalkan pada Java 2 SDK. Collection sudah ada sejak JDK 1.0 Hashtable Vector Collections Collection adalah suatu obyek yang bisa digunakan untuk menyimpan sekumpulan
Lebih terperinciGambar 1. Single Linked List
PRAKTIKUM 15 SINGLE LINKED LIST 1 A. TUJUAN PEMBELAJARAN Mahasiswa diharapkan mampu : 1. Memahami konsep SingleLinkedList untuk menambahkan node baru di awal, diakhir dan di index tertentu dan mengimplementasikan.
Lebih terperinci06/03/2018. Tidak memiliki parameter. Melakukan inisialisasi semua variabel private dengan nilai awal.
Pemrograman Berorientasi Object constructor operator new garbage collection and finalizers this constructor untuk inisialisasi suatu nilai 1 2 Class adalah template/blueprint untuk instant/object dari
Lebih terperinciMODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA BUBBLE SORT, SELECTION SORT, INSERTION SORT
Deskripsi Singkat MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA BUBBLE SORT, SELECTION SORT, INSERTION SORT Pada praktikum ke-1, kita telah mempelajari cara untuk menghitung interval waktu untuk 2 metode
Lebih terperinciAlgoritma Pemrograman [BS204]
Algoritma Pemrograman [BS204] [1.3] Bag, Queue, Stack Robert Sedgewick, Kevin Wayne, Algorithms 4 th Ed., Chapter 1, Addison-Wesley Professional, 2011 1 Tujuan Perkuliahan Menekankan gagasan cara kita
Lebih terperinciPemrograman Lanjut Class, Instance Variable dan Method PTIIK
Pemrograman Lanjut Class, Instance Variable dan Method PTIIK - 2013 Objectives Mampu mendeklarasikan class dan menggunakannya untuk membuat object. Mampu mendeklarasikan methods dalam class (tingkah laku
Lebih terperinciAdam Mukharil Bachtiar English Class Informatics Engineering Algorithms and Programming Searching
Adam Mukharil Bachtiar English Class Informatics Engineering 2011 Algorithms and Programming Searching Steps of the Day Definition of Searching Sequential Search Binary Search Let s Start Definition of
Lebih terperinciPemrograman Lanjut. Instance Variable Access Modifier Set dan Get Method
Pemrograman Lanjut Instance Variable Access Modifier Set dan Get Method PTIIK - 2014 Objectives Mampu mendeklarasikan class dan menggunakannya untuk membuat object. Mampu mendeklarasikan methods dalam
Lebih terperinciPertemuan 4 Halaman 1/1. Class Inheritance
Pertemuan 4 Halaman 1/1 Inheritance merupakan suatu cara untuk menurunkan suatu class yang lebih umum menjadi suatu class yang lebih spesifik. Superclass dan Subclasses Subclass merupakan class yang diturunkan
Lebih terperinciA. TUJUAN PEMBELAJARAN
PRAKTIKUM 5 GENERIC 1 A. TUJUAN PEMBELAJARAN 1. Memahami mengenai konsep generic. 2. Mengetahui cara merubah dari bentuk non generic menjadi generic. 3. Memahami generic pada Collection. B. DASAR TEORI
Lebih terperinciPoliteknik Elektronika Negeri Surabaya
PRAKTIKUM 14 ALGORITMA PENGURUTAN (MERGE SORT) A. TUJUAN PEMBELAJARAN 1. Memahami step by step algoritma pengurutan merge sort. 2. Mampu mengimplementasikan algoritma pengurutan merge sort dengan berbagai
Lebih terperinciGenerics. Prepared by Viska Mutiawani. 1
Generics Prepared by Viska Mutiawani 1 viska@unsyiah.ac.id Subtopik Generics Intro to generics Generic Programming Generics dan subtipe Wildcard? Raw type & type erasure 2 viska@unsyiah.ac.id 3 viska@unsyiah.ac.id
Lebih terperinciMODUL 3. Inheritance, Abstract Class, Interface TUJUAN PRAKTIKUM LANDASAN TEORI. A. Inheritance
MODUL 3 Inheritance, Abstract Class, Interface TUJUAN PRAKTIKUM 1. Praktikan dapat memahai bagaimana suatu class dapat mewariskan sifat dari class yang sudah ada. 2. Praktikan mampu mendefinisikan superclass
Lebih terperinciMODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA LINKED LIST (BAGIAN 2)
MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA LINKED LIST (BAGIAN 2) Deskripsi Singkat Struktur data linked list telah kita pelajari pada praktikum sebelumnya. Praktikum ini akan memanfaatkan linked list
Lebih terperinciMODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA QUEUE
MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA QUEUE Deskripsi Singkat merupakan bentuk struktur data seperti antrian yang memiliki konsep First In First Out (FIFO). Bermakna data yang pertama masuk merupakan
Lebih terperinciSimple Sorting Techniques
Simple Sorting Techniques DIK-013 Data Structure Diploma 3 Years in Informatics Management Irvanizam Zamanhuri, M.Sc Computer Science Study Program Syiah Kuala University http://www.informatika.unsyiah.ac.id/irvanizam
Lebih terperinciOverriding, Overloading, Polymorphism. Pertemuan 10 Pemrograman Berbasis Obyek Dr. Rodiah
Overriding, Overloading, Polymorphism Pertemuan 10 Pemrograman Berbasis Obyek Dr. Rodiah Topik Overriding Overloading Constructor overloading Polymorphism Virtual Method Invocation Polymorphic arguments
Lebih terperinciOperator dan Assignment
Operator dan Assignment Macam-macam Operator Arithmetic Op. : + - * / % Relational Op. : > >= < >>> Conditional Op.
Lebih terperinciBEKERJA DENGAN JAVA CLASS LIBRARY
MK. Pemrograman Berorientasi Objek BEKERJA DENGAN JAVA CLASS LIBRARY (CLASS-METHOD-OBJECT) KARMILASARI ANALOGI OBJEK DALAM DUNIA NYATA Objek di dunia nyata = Objek dalam perangkat lunak Atribut di dunia
Lebih terperinciMODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA LINKED LIST (BAGIAN 1)
MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA LINKED LIST (BAGIAN 1) Deskripsi Singkat Struktur data array memang sederhana namun unsur-unsur pada array terkait rapat sehingga proses menggeser data di dalam
Lebih terperinci1. Pelajari program berikut,kemudian modifikasi program dengan ketentuan berikut
TUGAS 1. Pelajari program berikut,kemudian modifikasi program dengan ketentuan berikut 1. Rubah ke bentuk GUI 2. Interface program tentukan sendiri. 3. Data staff dibuat dalam bentuk entrian ( lihat pada
Lebih terperinciGambar 1. Single Linked List
PRAKTIKUM 16 ITERATOR PADA SINGLE LINKED LIST A. TUJUAN PEMBELAJARAN Mahasiswa diharapkan mampu : 1. Memahami konsep Iterator pada SingleLinkedList 2. Mengimplementasikan konsep Iterator pada SingleLinkedList
Lebih terperinciKUM 3 IMPLEMENTASI LIST
PRAKTIKUM KUM 3 IMPLEMENTASI LIST TUJUAN PEMBELAJARAN: 1. Mengimplementasikan struktur data LIST menggunakan array. 2. Menggunakan interface untuk mendefinisikan sekumpulan method generik dan dapat diimplementasikan
Lebih terperinciModul Praktikum 4 Pemograman Berorientasi Objek
Modul Praktikum 4 Pemograman Berorientasi Objek 1. Judul : Array 2. Tujuan Percobaan : Diakhir praktikum, mahasiswa diharapkan mampu : Mendeklarasikan dan membuat array Mengakses elemen-elemen didalam
Lebih terperinciBahasa Pemrograman :: Polimorfism and Abstraction
Bahasa Pemrograman :: and Abstraction Julio Adisantoso ILKOM IPB 24 Mei 2010 Access Modifiers Access Modifiers Accessor Methods Mutator Methods Inheritance Akses Default (Package Accessibility) Tidak terdapat
Lebih terperinciPemrograman Berbasis Objek GENERIC. Yuliana Setiowati. Politeknik Elektronika Negeri Surabaya
GENERIC Yuliana Setiowati Topik Definisi Generic Non Generic Class Cara mendeklarasikan Type Generic Aturan Penamaan Type Parameter Subtyping Class Generic dengan Dua Type Parameter Generic pada List Nested
Lebih terperinci9/26/2011. Tujuan. Bekerja dengan Java Class Library. Pengenalan OOP. Pengenalan OOP. Class dan Object. Enkapsulasi
Tujuan Pada akhir pembahasan, siswa diharapkan dapat : JAVA Education Network Indonesia Bekerja dengan Java Class Library Pengenalan Pemrograman 1 Menjelaskan OOP dan beberapa konsepnya Membedakan antara
Lebih terperinciGambar 1. Single Linked List
PRAKTIKUM 16 SINGLE LINKED LIST 2 A. TUJUAN PEMBELAJARAN Mahasiswa diharapkan mampu : 1. Memahami konsep SingleLinkedList untuk menghapus sebuah node 2. Memahami konsep SingleLinkedList untuk mencari index
Lebih terperinciPemrograman Berbasis Objek Operator dan Assignment
Operator dan Assignment Macam-macam macam Operator Arithmetic Op. : + - * / % Relational Op. : > >= < >>> Conditional
Lebih terperinciIKG2I4 / Software Project I
IKG2I4 / Software Project I Mahmud Imrona, M.T. Izzatul Ummah, M.T. Kelompok Keahlian Algoritma dan Komputasi LECTURE NOTE WEEK 6 1 3/11/2015 WEEK 6 Abstract Class Interface Exception 2 3/11/2015 ABSTRACT
Lebih terperinciKARAKTERISTIK PEMROGRAMAN BERORIENTASI OBJEK (OOP) Pemrograman berorientasi Objek mempunyai karakterisitik sebagai berikut:
KARAKTERISTIK PEMROGRAMAN BERORIENTASI OBJEK (OOP) Pemrograman berorientasi Objek mempunyai karakterisitik sebagai berikut: a. Abstraksi (abstraction) b. Pembungkusan (encapsulation) c. Pewarisan (inheritence)
Lebih terperinci1.Tujuan. 2. Latar Belakang. Mendefinisikan superclasses dan subclasses Override method dari superclasses Membuat method final dan class final
1.Tujuan Mendefinisikan superclasses dan subclasses Override method dari superclasses Membuat method final dan class final 2. Latar Belakang Dalam bagian ini, kita akan membicarakan bagaimana suatu class
Lebih terperinciSORTING DENGAN ALGORITMA DIVIDE AND CONQUER
SORTING DENGAN ALGORITMA DIVIDE AND CONQUER Ibnu Alam (13506024) Teknik Informatika Institut Teknologi Bandung Jalan Ganesha 10 if16024@students.if.itb.ac.id ABSTRAK Kemangkusan program adalah salah satu
Lebih terperinciAbstract Class dan Interface. Viska Mutiawani, M.Sc
Abstract Class dan Interface Viska Mutiawani, M.Sc Konsep Penting Abstract class Abstract method Interface Implements Final Static Exception Contoh Polimorfisme Lihat contoh program yang disediakan pada
Lebih terperinciMEMBUAT KELAS SENDIRI. Dewi Sartika, M.Kom
MEMBUAT KELAS SENDIRI Dewi Sartika, M.Kom MENDEFINISIKAN KELAS SENDIRI class ...... DEKLARASI ATRIBUT [=]; Contoh Instance variable : private
Lebih terperinciVariabel dengan tipe dasar hanya dapat menyimpan sebuah nilai
Variabel dengan tipe dasar hanya dapat menyimpan sebuah nilai 5 buah nilai dengan tipe yang sama dapat saja disimpan dalam 5 buah variabel, tetapi bagaimana dengan 100 nilai? Disimpan dengan 100 variabel?
Lebih terperinciGambar 1. Single Linked List
PRAKTIKUM 15-16 SINGLE LINKED LIST A. TUJUAN PEMBELAJARAN Mahasiswa diharapkan mampu : 1. Memahami konsep Linked List 2. Memahami dan mampu membedakan Linked list dengan array 3. Memahami operasi yang
Lebih terperinciPemrograman Berorientasi. Class dan Obyek 2
Pemrograman Berorientasi Obyek Class dan Obyek 2 anton@ukdw.ac.id Method main pada Java public static void main(string[] args) Merupakan bagian yang dieksekusi oleh program Java Sifat: public, static,
Lebih terperinciAgar lebih mudah mengerti, cobalah untuk melakukan hal-hal berikut ini: 1. Bacalah terlebih dahulu ide dasar dari masing-masing algoritma.
Modul ASD Minggu 4 Elementary Sorting Pada modul ini, dibahas dua implementasi algoritma sorting, yaitu selection sort dan insertion sort. Selain itu, pada modul ini juga dibahas penggunaan sorting yang
Lebih terperinciAlgoritma dan Struktur Data
Algoritma dan Struktur Data Click to edit Master subtitle style Pertemuan 3 Pengantar Analisis Efisiensi Algoritma Analisa efisiensi algoritma bertujuan mengestimasi waktu dan memori yang dibutuhkan untuk
Lebih terperinciINSTITUT TEKNOLOGI SUMATERA COLLECTION: SET DAN MAP
INSTITUT TEKNOLOGI SUMATERA COLLECTION: SET DAN MAP COLLECTION INTERFACE COLLECTION public interface Collection { // Basic Operations int size(); boolean isempty(); boolean contains(object element); boolean
Lebih terperinciPolymorphism (Polimorfisme)
Polymorphism (Polimorfisme) Pemrograman Berorientasi Objek Minggu 7 Alfa Faridh Suni Polymorphisme * Poly + morph = banyak + bentuk * Polymorphism yang berarti satu objek dapat memiliki banyak bentuk yang
Lebih terperinciMODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK
MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK Deskripsi Singkat Praktikum pemrograman berorientasi objek adalah praktikum yang menggunakan bahasa Java sebagai bantuan dalam memahami konsep pemrograman
Lebih terperinciGambar 1: Hirarki class
BAB 11 Pewarisan, Polimorfisme, dan Interface 11.1 Tujuan Dalam bagian ini, kita akan membicarakan bagaimana suatu class dapat mewariskan sifat dari class yang sudah ada. Class ini dinamakan subclass dan
Lebih terperinciKONSEP OOP: POLYMORPHISM
PEMROGRAMAN LANJUT Sistem Informasi PTIIK UB Semester Genap 2014/2015 KONSEP OOP: POLYMORPHISM Dr. Eng. Herman Tolle Program Teknologi Informasi & Ilmu Komputer, Universitas Brawijaya Polymorphism Polymorphism
Lebih terperinciPemrograman Berorientasi. Abstract & Interface
Pemrograman Berorientasi Obyek Abstract & Interface anton@ukdw.ac.id Latar Belakang Kita sudah mengenal pewarisan, bahwa class anak akan selalu mendapat warisan atribut dan behavior dari class induk Class
Lebih terperinciKonsep Dasar Pemrograman Berorientasi Objek
Konsep Dasar Pemrograman Berorientasi Objek CLASS & OBJECT Kita dapat membuat banyak OBJECT dari satu CLASS Untuk membuat banyak OBJECT, kita cukup gunakan keyword new berulang kali Misal: Rekening CLASS
Lebih terperinciPEMAHAMAN DASAR DASAR JAVA
MODUL 1 PEMAHAMAN DASAR DASAR JAVA A. PENGANTAR JAVA Java Standard Development Kit (JDK/SDK) merupakan alat-alat utama bagi programmer untuk membuat dan menjalankan java. Development Kit dapat didownload
Lebih terperinciB.1 Mengurutkan Obyek String Terdapat array dengan tipe String, untuk mengurutkan data String pada array gunakan Arrays.sort().
PRAKTIKUM 4 COMPARABLE DAN COMPARATOR A. TUJUAN PEMBELAJARAN 1. Mengetahui untuk mengurutkan data dengan cara membandingkan satu objek dengan objek lainnya. 2. Mengetahui class-class di Java yang mengimplementasikan
Lebih terperinciA. TUJUAN Mahasiswa diharapkan mampu : 1. Memahami Konsep Binary Search Tree 2. Mengimplementasaikan Binary Search Tree
PRAKTIKUM 27 BINARY SEARCH TREE A. TUJUAN Mahasiswa diharapkan mampu : 1. Memahami Konsep Binary Search Tree 2. Mengimplementasaikan Binary Search Tree B. DASAR TEORI Binary search tree adalah salah satu
Lebih terperinciSORTING (BAGIAN II) Proses kelima
SORTING (BAGIAN II) I. INSERTION SORT Mirip dengan cara orang mengurutkan kartu, selembar demi selembar kartu diambil dan disisipkan (insert) ke tempat yang seharusnya. Pengurutan dimulai dari data ke-2
Lebih terperinciObject Oriented Programming (OOP) --Inheritance- Saniati STMIK Teknokrat, Bandar Lampung
Object Oriented Programming (OOP) --Inheritance- Saniati STMIK Teknokrat, Bandar Lampung Karakteristik OOP Encapsulation Inheritance Polimorphisme Inheritance Membuat class baru yang merupakan turunan
Lebih terperinciPoliteknik Elektronika Negeri Surabaya
PRAKTIKUM 11-12 ALGORITMA PENGURUTAN (BUBBLE DAN SHELL) A. TUJUAN PEMBELAJARAN 1. Memahami mengenai algoritma pengurutan bubble sort dan shell sort. 2. Mampu mengimplementasikan algoritma pengurutan bubble
Lebih terperinciB.1 Mengurutkan Objek String Terdapat array dengan tipe String, untuk mengurutkan data String pada array gunakan Arrays.sort().
PRAKTIKUM 22 COMPARATOR A. TUJUAN PEMBELAJARAN 1. Memahami untuk mengurutkan data dengan cara membandingkan satu objek dengan objek lainnya. 2. Mengetahui cara mengurutkan data dengan class yang didefinisikan
Lebih terperinciPemrograman Lanjut Dosen: Dr. Eng. Herman Tolle
Pemrograman Lanjut Dosen: Dr. Eng. Herman Tolle 2 Case Study: Payroll System Using Polymorphism Create a payroll program Use abstract methods and polymorphism Problem statement 4 types of employees, paid
Lebih terperinciGambar 13.1 Ilustrasi proses algoritma sorting
MODUL 13 SORTING 13.1 Kompetensi 1. Mahasiswa mampu menjelaskan mengenai algoritma sorting. 2. Mahasiswa mampu membuat dan mendeklarasikan struktur algoritma sorting. 3. Mahasiswa mampu menerapkan dan
Lebih terperinciBAB IV IMPLEMENTASI DAN PENGUJIAN
BAB IV IMPLEMENTASI DAN PENGUJIAN 4.1 Proses Aplikasi Pada bab ini akan dibahas implementasi sistem rancang bangun Aplikasi pencarian pasal-pasal undang-undang hukum dengan metode String Matching hingga
Lebih terperinciBAB 4 ARRAY. number1 = 10; number2 = 20; number3 = 30;
BAB 4 ARRAY Array adalah tipe data terstruktur yang terdiri dari sejumlah komponen-komponen yang mempunyai tipe sama. Komponen-komponen tersebut disebut sebagai komponen type, larik mempunyai jumlah komponen
Lebih terperinciA. TUJUAN PEMBELAJARAN 1. Memahami konsep Class LinkedList di Collection 2. Memahami penggunaan method-method pada Class LinkedList.
PRAKTIKUM 20 DOUBLE LINKED LIST : CLASS LINKEDLIST DI COLLECTION A. TUJUAN PEMBELAJARAN 1. Memahami konsep Class LinkedList di Collection 2. Memahami penggunaan method-method pada Class LinkedList. B.
Lebih terperinciJava Generic & Collection
UNIVERSITAS KOMPUTER INDONESIA Java Generic & Collection Unikom Programming Team Eko Kurniawan Khannedy 5/1/2010 Java Generic Kenapa Pemrograman Generic? Generic Programming artinya kode yang dapat digunakan
Lebih terperinciMembuat dan Menggunakan Class
Pertemuan 3 Halaman 1/1 Membuat class pada java : Untuk mendefinisikan suatu class pada java digunakan : class ClassName { suatu class dapat terdiri dari - attribute / data field - method Attribute Attribute
Lebih terperinciArrays. Misalkan kita ingin menyimpan 100 buah integer Buat 100 variabel bertipe integer. Tidak efisien!
Array Alfan Arrays Misalkan kita ingin menyimpan 100 buah integer Buat 100 variabel bertipe integer int angka1 = 0; int angka2 = 1; Dst Tidak efisien! Kita dapat menyimpannya dalam sebuah variabel dengan
Lebih terperinciPewarisan, Polimorfisme, dan Interface
Pewarisan adalah keuntungan besar dalam pemrograman berbasis object karena suatu sifat atau method didefinisikan dalam superclass, sifat ini secara otomatis diwariskan dari semua subclasses. Jadi, Anda
Lebih terperinciIdentifier, Keywords, Variabel, Tipe Data Primitif dan Operator PBO. Ramos Somya
Identifier, Keywords, Variabel, Tipe Data Primitif dan Operator PBO Ramos Somya Identifier Merupakan nama yang digunakan untuk menamai class, variabel, method dan interface. Aturan: - Tidak ada batasan
Lebih terperinciBahasa Pemrograman :: Inheritance
Bahasa Pemrograman :: Inheritance Julio Adisantoso ILKOM IPB 17 Mei 2010 Class Person Class Student Class Person public class Person { private String name; private String address; private int age; //constructors
Lebih terperinciBAB 7 Java Array. Sebagai contoh, kita memiliki tiga variabel dengan tipe data int yang memiliki identifier yang berbeda untuk tiap variabel.
7.1 Tujuan BAB 7 Java Array Dalam bagian ini, kita akan mendiskusikan mengenai array dalam Java. Pertama, kita akan mendefinisikan apa yang dimaksud dengan array, kemudian kita juga akan mendefinisikan
Lebih terperinciModul Praktikum Bahasa Pemrograman 1
Modul Praktikum Tahun Ajaran 2009/2010 Revisi : Eko Andriyanto Wicaksono, S.Kom Materi 6 Array Pengenalan Array Pada Bab sebelumnya, kita telah mendiskusikan bagaimana cara pendeklarasian berbagai macam
Lebih terperinciOverriding Overloading Polymorphism
Overriding Overloading Polymorphism Topik Overriding Overloading Constructor overloading Polymorphism Virtual Method Invocation Polymorphic arguments Operator instanceof Casting & Convertion Objects 1
Lebih terperinciPERTEMUAN III OBJEK DAN CLASS TUJUAN PRAKTIKUM
PERTEMUAN III OBJEK DAN CLASS TUJUAN PRAKTIKUM 1. Praktikan memahami perbedaan objek dan class pada Java. 2. Praktikan memahami konsep berorientasi objek. 3. Praktikan dapat membuat program sederhana dengan
Lebih terperinciINTERAKSI ANTAR OBJECT
INTERAKSI ANTAR OBJECT Farah Zakiyah Rahmanti, M.T 2015 Overview Constructor Overloading Constructor Hak Akses (public, protected, private) Contoh Static Class Constructor (konstruktor) Constructor adalah
Lebih terperinciDesign and Analysis Algorithm
Design and Analysis Algorithm Pertemuan 02 Drs. Achmad Ridok M.Kom Fitra A. Bachtiar, S.T., M. Eng Imam Cholissodin, S.Si., M.Kom Aryo Pinandito, MT Contents 31 2 Analisis Algoritma Analisis Efisiensi
Lebih terperinciOBJECT ORIENTED PROGRAMMING. Day 3 : Operator dan Assignment
OBJECT ORIENTED PROGRAMMING Day 3 : Operator dan Assignment TOPIK Membedakan antara instance dan local l variabel. Urutan pemrosesan Unary operator Arithmetic operator Shift operator: , dan >>> Comparison
Lebih terperinciAlgoritma & Struktur Data. Array. Oleh : Nur Hayatin, M.Kom
Algoritma & Struktur Data Array Oleh : Nur Hayatin, M.Kom Teknik Informatika Universitas Muhammadiyah Malang 2016 About.. [U r Lecturer] Nama : Nur Hayatin, M.Kom Email : noorhayatin@umm.ac.id Research
Lebih terperinciReserved words Reserved words atau keywords merupakan kata-kata spesifik digunakan oleh compiler untuk keperluan pemrograman. Contoh reserved words
Comments Comments digunakan untuk memberikan keterangan/penjelasan suatu baris program. Comments tidak akan dikompilasi oleh compiler. Lambang untuk comments : - double slash ( // ) untuk memberikan penjelasan
Lebih terperinciModul Pelatihan : Pembuatan Game Animasi Menggunakan Greenfoot
Modul Pelatihan : Pembuatan Game Animasi Menggunakan Greenfoot 1 Bab 1 PENDAHULUAN Greenfoot adalah perangkat lunak yang didesain untuk pemula agar dapat terbiasa dengan Pemrograman Berorientasi Objek(Object-Oriented
Lebih terperinciGrouping Object. Viska Mutiawani, M.Sc
Grouping Object Viska Mutiawani, M.Sc Konsep Penting Array ArrayList Vector Kenapa perlu mengelompokkan objek Banyak aplikasi melibatkan pengelompokan objek: Organizer. Notebook. Katalog buku. Jumlah data
Lebih terperinciPengenalan OOP. Object-Oriented programming (OOP) Menitikberatkan pada konsep object sebagai elemen dasar dari program.
Class & Objek Pengenalan OOP Object-Oriented programming (OOP) Menitikberatkan pada konsep object sebagai elemen dasar dari program. Object tersebut dikarakterisasi oleh property dan behavior. Pengenalan
Lebih terperinciBAHASA PEMROGRAMAN JAVA
MI1274 Algoritma & Pemrograman Lanjut Genap 2015-2016 BAHASA PEMROGRAMAN JAVA Disusun Oleh: Reza Budiawan Untuk: Tim Dosen Algoritma & Pemrograman Lanjut Hanya dipergunakan untuk kepentingan pengajaran
Lebih terperinci