Stack Dasar - Java
Stack merupakan salah satu cara pengaturan data dalam strukturdata. Stack atau tumpukan dapat diibaratkan sebagai sebuah tumpukan piring. Sebuah tumpukan piring hanya dapat ditambah dari atas dan piring paling ataslah yg bisa diambil jika tidak ingin merusak tumpukan piring tsb.
Berikut adalah implementasi dari stack pada java:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import java.util.ArrayList; | |
import java.util.List; | |
public class UserStack { | |
private List<Object> list = new ArrayList<Object>(); | |
private int currentIndex = -1; | |
public void push(Object object) { | |
list.add(object); | |
currentIndex++; | |
} | |
public Object pop(){ | |
Object object = list.remove(currentIndex); | |
currentIndex--; | |
return object; | |
} | |
public int count() { | |
return list.size(); | |
} | |
public Object peek(){ | |
return list.get(currentIndex); | |
} | |
public void clear(){ | |
list.clear(); | |
currentIndex = -1; | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public class UserApp { | |
public static void main(String[] args) { | |
UserStack newStack = new UserStack(); | |
newStack.push("Abd Wahid"); | |
newStack.push("Toni"); | |
newStack.push("Laila"); | |
System.out.println("Jumlah data pada UserStack: " + newStack.count()); | |
System.out.println("Data teratas pada userStact: " + newStack.peek()); | |
System.out.println("=================================="); | |
System.out.println("User yg dikeluarkan (Pop): " + newStack.pop()); | |
System.out.println("Jumlah data setalah Pop: " + newStack.count()); | |
System.out.println("Data teratas setelah Pop: " + newStack.peek()); | |
} | |
} |
Ada beberapa method yang telah dibuat untuk mengakses stack:
- Push, untuk menambah data pada tumpukan teratas.
- Pop, untuk menghapus data teratas.
- Peek, untuk melihat data teratas pada stack.
- Clear, untuk menghapus semua data pada stack.
- Size, untuk mengetahui banyak data.
Berikut adalah implementasi stack dalam bentuk User:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public class UserApp { | |
public static void main(String[] args) { | |
UserStack newStack = new UserStack(); | |
newStack.push("Abd Wahid"); | |
newStack.push("Toni"); | |
newStack.push("Laila"); | |
System.out.println("Jumlah data pada UserStack: " + newStack.count()); | |
System.out.println("Data teratas pada userStact: " + newStack.peek()); | |
System.out.println("=================================="); | |
System.out.println("User yg dikeluarkan (Pop): " + newStack.pop()); | |
System.out.println("Jumlah data setalah Pop: " + newStack.count()); | |
System.out.println("Data teratas setelah Pop: " + newStack.peek()); | |
} | |
} |
Berikut adalah output dari stack yang telah dibuat:
Belum ada Komentar untuk "Stack Dasar - Java"
Posting Komentar