AMIK PGRI KEBUMEN-STRUKTUR DATA - PRAKTIKUM KE-3
LAPORAN PRAKTIKUM STACK DAN QUEUE
Nama: Monika Dewi Permata Sari
Nim: 16/MI/0005
Jurusan: Management Informatika
Tahun Ajaran: 2017/2018
Hai
aku mau bagi ilmu lagi nih tentang Stack
dan Queue ..Kalian pasti udah tau tentang Stack dan Queue malah lebih jago dari
aku...tapi disini aku share ilmu yang aku dapet aja dari dosen ..Mau jelasin sedikit
ya tentang Stack dn Queue
Ø
Stack adalah
salah satu struktur data yang memiliki sistem kerja Last In First Out (LIFO),
yang terakhir masuk pertama keluar.Contoh :
sebuah tumpukan buku, ketika mengambil sebuah buku di dalam
tumpukan itu maka harus diambil satu persatu dari buku yang paling atas dari
tumpukan buku tersebut.
Ø Queue adalah kumpulan data dengan
penambahan data hanya melalui satu sisi, yaitu belakang (tail) dan penghapusan
data hanya melalui sisi depan (head). Berbeda dengan stack yang bersifat LIFO
maka queue bersifat FIFO(First In First Out), yaitu data yang pertama masuk akan
keluar terlebih dahulu dan data yang terakhir masuk akan keluar
terakhir.
Kalau
tentang Stack dan Queue masih banyak banget sih tapi coba cari sendiri ya
....hehehe
Ini contoh ke 1
Codingnya
//@uthor
monika dewi
package
Pertemuan4;
import
java.util.Stack;
public class
StackExample1 {
public static void main (String args[]) {
Stack s = new Stack();
s.push("Java");
s.push("Source");
s.push("and");
System.out.println("Next: "+
s.peek());
s.push("Support");
System.out.println(s.pop());
s.push(".");
int count = s.search("Java");
while (count !=-1 && count >
1){
s.pop();
count--;
}
System.out.println(s.pop ());
System.out.println(s.empty());
}
}
Ini hasil
runnya
Contoh
yang ke 2
Ini
Codingnya
//@author monika dewi
package Pertemuan4;
import java.util.Iterator;
import java.util.Stack;
public class StrackExample2 {
public static void main (String [] args){
Stack<String> sk=new
Stack<String>();
sk.push ("a");
sk.push ("c");
sk.push ("e");
sk.push ("d");
Iterator it=sk.iterator();
System.out.println("Size before
pop():"+sk.size());
while(it.hasNext())
{
String iValue=(String)it.next();
System.out.println("Iterator
value : "+iValue);
}
//get and remove last element from
stack
String value = (String)sk.pop();
System.out.println("value:"+sk.size());
}
}
Ini run nya
Ini yang harus di perhatiin coding
ini untuk membuka program yang contoh kelima(5)
public interface Stack<T> {
abstract boolean isEmpty();
abstract T peek ();
abstract T pop ();
abstract void push (T item);
abstract int size ();
}
Contoh ke
4
package Pertemuan4;
import
java.util.EmptyStackException;
public class StackArr <T>
implements Stack<T> {
T value [];
int topOfStack;
public StackArr(int size){
value = (T[]) new Object[size];
}
@Override
public boolean isEmpty(){
return topOfStack==0;
}
@Override
public T pop(){
if (isEmpty()){
throw new EmptyStackException();
}
topOfStack--;
return value [topOfStack];
}
@Override
public void push (T item ){
value[topOfStack]= item;
topOfStack++;
}
@Override
public T peek (){
if (isEmpty()){
throw new EmptyStackException();
}
topOfStack--;
T temp = value [topOfStack];
topOfStack++;
return temp;
}
@Override
public int size(){
return topOfStack;
}
@Override
public String toString(){
String str ="";
for (int i=0; i<topOfStack; i++){
str +=value[i]+"";
}
return str;
}
public int count() {
throw new UnsupportedOperationException("Not supported yet.");
}
}
Ini
contoh ke 5
Ini
codingnya
package Pertemuan4;
public class TestStackArr {
public static void main (String[] args ){
StackArr<String> sa = new
StackArr<String>(10);
sa.push ("Pink");
sa.push ("Purple");
sa.push ("red");
System.out.println("Push Stack
:" +sa.toString());
System.out.println("Size Stack
:"+sa.size ());
sa.pop();
System.out.println("Pop Stack
:"+sa.toString());
System.out.println("Peek
Stack:"+sa.peek());
System.out.println("Size Stack
:"+sa.size());
}
}
Ini run nya
Ini
Tugasnya ( Contoh ke 6)
Ini
Codinya
//@ author monika dewi
package Pertemuan4;
import java.util.*;
import java.util.Scanner;
class Palindrom{
public static void main(String
args[]){
String kata, dibalik = "";
Scanner in = new Scanner(System.in);
System.out.println("masukkan
kalimat:");
kata= in.nextLine();
for ( int i = kata.length()-1 ; i >= 0 ; i-- )
dibalik = dibalik + kata.charAt(i);
System.out.println("hasil: "+dibalik );
String original, reverse =
""; // Objects of String class
original = in.nextLine();
int length = original.length();
for
( int i = length - 1; i >= 0; i-- )
reverse = reverse +
original.charAt(i);
if (original.equals(reverse))
System.out.println("bukan
palindrome");
else
System.out.println("palindrome");
System.out.println("masukkan
kalimat:");
kata= in.nextLine();
System.out.println("hasil :"+kata);
for ( int i = length - 1; i >= 0; i-- )
reverse = reverse +
original.charAt(i);
if (original.equals(reverse))
System.out.println("palindrome");
else
System.out.println("bukan
palindrome");
}
}
Ini run nya
Sampe sini dulu ya Share ilmu nya ..bye-bye
Komentar
Posting Komentar