Profile

Cover photo
Yeni Septiana
Attended universitas bina darma
Lives in Palembang
5 followers|1,148 views
AboutPostsPhotosVideos

Stream

Yeni Septiana

Shared publicly  - 
 
A. IQ (Intelektual Question) 
IQ atau lebih dikenal dengan Intelektual Question merupakan bagian terpenting dalam individu seseorang. Intelektual membantu seseorang dalam menganalisa sesuatu, berfikir secara rasional dan melakukan secara maksimal. Intelektual sering kali menjadi tolak ukur dalam perencanaan program pembelajaran. 
semestinya Kecerdasan Intelektual (IQ) Kecerdasan yang terletak di otak bagian Cortex (kulit otak). Kecerdasan ini adalah sebuah kecerdasan yang memberikan kita kemampuan untuk berhitung, beranalogi, berimajinasi, dan memiliki daya kreasi serta inovasi.
B.EQ (Emotional Question)
 EQ atau biasa disebut Emotional Question adalah bagian yang menjadi identitas kepribadian seseorang. Emosional yang terjaga baik dan tertata rapi juga akan menghasilkan pribadi yang baik dan berkualitas. Sehingga dalam pelaksanaan proses pembelajaran, emosional peserta didik sangat menentukan keberhasilan pencapaian tujuan yang telah ditetapkan. 
Kecerdasan Emosional (EQ) Kecerdasan emosional adalah sebuah kemampuan untuk “mendengarkan” bisikan emosi, dan menjadikannya sebagai sumber informasi maha penting untuk memahami diri sendiri dan orang lain demi mencapai sebuah tujuan. Banyak orang yang salah memposisikan kecerdasan Emosional ini di bawah kecerdasan intelektual. Tetapi, penelitian mengatakan bahwa kecerdasan ini lebih menentukan kesuksesan seseorang dibandingkan dengan kecerdasan sosial.
C. SQ ( Spritual Question)
SQ atau Spiritual Question merupakan bagian terluar dari individu. Spiritual sering dikaitkan dengan nilai-nilai kepercayaan dan agama atau dalam Islam dikenal dengan Habluminalloh. Kepercayaan juga menjadi faktor penentu pelaksanaan pendidikan, karena setiap manusia memiliki kodrat untuk meyakini sebuah agama. Ketiga elemen diatas terlihat berbeda dan menganalisa bagian-bagai tertentu dalam individu, namun dalam proses pelaksanaan pembelajaran, ketiga elemen ini saling berkaitan dan mendukung satu sama lain. Tidak jarang ditemuka ditengah lapangan, para ilmuwan yang mempunyai pemikiran brilian, namun terkendala dalam emosinya sehingga sering mengalami gangguan kejiwaan. Banyak juga para ilmuan yang tidak mengenal agama, sehingga ilmu yang ia miliki digunakan pada tempat yang tidak Kecerdasan Spiritual (SQ) Kecerdasan ini pertama kali digagas oleh Danar Zohar dan Ian Marshall, masing-masing dari Harvard University dan Oxford University. Dikatakan bahwa kecerdasan spiritual adalah sebagai kecerdasan untuk menghadapi persoalan makna atau value untuk menempatkan perilaku dan hidup kita dalam konteks makna yang lebih luas dan kaya. SQ juga bermakna kecerdasan untuk menempatkan perilaku dan hidup manusia dalam konteks makna yang lebih luas dan kaya. Kecerdasan untuk menilai bahwa tindakan atau jalan hidup seseorang lebih bermakna dibandingkan dengan yang lain. Orang yang ber SQ tinggi mampu memaknai penderitaan hidup dengan memberi makna positif pada setiap peristiwa, masalah, bahkan penderitaan yang dialaminya. 

SARAN
Saran Pendidikan yang mementingkan ketiga dimensi IQ, SQ dan EQ tentu akan menghasilkan peserta didik yang berkualitas, baik dari segi ilum, iman maupun sosial. Indonesia sendiri telah mencanangkan pendidikan berkarakter, pendidikan berkarakter sendiri jelas sekali mengacu kepada pengaktifak unsur IQ, EQ dan SQ dalam diri peserta didik. Namun, pada dunia pendidikan saat sekarang ini, meskipun wacana itu telah bergulir, pelaksanaan dilapangan tidak begitu berjalan secara optimal. Maka diharapkan, setelah memahami betapa pentingnya unsur-unsur ini, maka pelaksanaan pendidikan berkarakter dapan terlaksana dengan baik 
 ·  Translate
1
Add a comment...

Yeni Septiana

Shared publicly  - 
 
Pengertian Stack
Stack atau tumpukan adalah suatu stuktur data 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
Contohnya, karena kita menumpuk Compo di posisi terakhir, maka Compo akan menjadi elemen teratas dalam tumpukan. Sebaliknya, karena kita menumpuk Televisi pada saat pertama kali, maka elemen Televisi menjadi elemen terbawah dari tumpukan. Dan jika kita mengambil elemen dari tumpukan, maka secara otomatis akan terambil elemen teratas, yaitu Compo juga.  

Operasi-operasi/fungsi Stack
Push : digunakan untuk menambah item pada stack pada tumpukan paling atas
Pop : digunakan untuk mengambil item pada stack pada tumpukan paling atas
Clear : digunakan untuk mengosongkan stack
IsEmpty : fungsi yang digunakan untuk mengecek apakah stack sudah kosong
IsFull : fungsi yang digunakan untuk mengecek apakah stack sudah penuh
 

Stack with Array of Struct
Definisikan Stack dengan menggunakan struct
Definisikan MAX_STACK untuk maksimum isi stack
Buatlah variabel array data sebagai implementasi stack secara nyata
Deklarasikan operasi-operasi/function di atas dan buat implemetasinya
Deklarasi MAX_STACK
#define MAX_STACK 10 //hati-hati mulai dari 0 jadi 0-9
Deklarasi STACK dengan struct dan array data
typedef struct STACK{
int top;
char data[10][10]; //misalkan : data adalah array of string
//berjumlah 10 data, masing-masing string
//menampung maksimal 10 karakter
};
Deklarasi/buat variabel dari struct
STACK tumpuk;
Inisialisasi Stack
Pada mulanya isi top dengan 1, karena array dalam C dimulai dari 0, yang berarti stack adalah KOSONG!
Top adalah suatu variabel penanda dalam STACK yang menunjukkan elemen teratas Stack sekarang. Top Of Stack akan selalu bergerak hingga mencapai MAX of STACK sehingga menyebabkan stack PENUH!
Ilustrasi stack pada saat inisialisasi:
Fungsi IsFull
Untuk memeriksa apakah stack sudah penuh?
Dengan cara memeriksa top of stack, jika sudah sama dengan
MAX_STACK-1 maka full, jika belum (masih lebih kecil dari MAX_STACK-1) maka belum full
Ilustrasi:
Fungsi IsEmpty
Untuk memeriksa apakah stack masih kosong?
Dengan cara memeriksa top of stack, jika masih -1 maka berarti stack masih kosong!
Program:
Fungsi Push
Untuk memasukkan elemen ke stack, selalu menjadi elemen teratas stack
Tambah satu (increment) nilai top of stack terlebih dahulu setiap kali ada penambahan elemen stack, asalkan stack masih belum penuh, kemudian isikan nilai baru ke stack berdasarkan indeks top of stack setelah ditambah satu (diincrement)
Ilustrasinya:
Fungsi Pop
Untuk mengambil elemen teratas dari stack.
Ambil dahulu nilai elemen teratas stack dengan mengakses top of stack, tampilkan nilai yang akan diambil terlebih dahulu, baru didecrement nilai top of stack sehingga jumlah elemen stack berkurang
Ilustrasinya:
Programnya:
Fungsi Print
Untuk menampilkan semua elemen-elemen stack
Dengan cara looping semua nilai array secara terbalik, karena kita harusmengakses dari indeks array tertinggi terlebih dahulu baru ke indeks yang kecil!




QUEUE DENGAN MENGGUNAKAN ARRAY
Queue = Antrian
Elemen yang pertama kali masuk ke antrian akan keluar pertama kalinya
DEQUEUE adalah mengeluarkan satu elemen dari suatu Antrian
Antrian dapat dibuat dengan menggunakan: Liniear Array dan Circular
Array
QUEUE DENGAN LINIEAR ARRAY
Terdapat satu buah pintu masuk di suatu ujung dan satu buah pintu keluar
di ujung satunya
Sehingga membutuhkan variabel Head dan Tail

DEKLARASI QUEUE
OPERASI-OPERASI PADA QUEUE
Create()
o Untuk menciptakan dan menginisialisasi Queue
o Dengan cara membuat Head dan Tail = -1 - IsEmpty()
o Untuk memeriksa apakah Antrian sudah penuh atau belum
o Dengan cara memeriksa nilai Tail, jika Tail = 1 maka empty
o Kita tidak memeriksa Head, karena Head adalah tanda untuk kepala
antrian (elemen pertama dalam antrian) yang tidak akan berubahubah
o Pergerakan pada Antrian terjadi dengan penambahan elemen
Antrian kebelakang, yaitu menggunakan nilai Tail
IsFull()
o Untuk mengecek apakah Antrian sudah penuh atau belum
o Dengan cara mengecek nilai Tail, jika Tail >= MAX-1 (karena MAX-1
adalah batas elemen array pada C) berarti sudah penuh
- Enqueue(data)
o Untuk menambahkan elemen ke dalam Antrian, penambahan
elemen selalu ditambahkan di elemen paling belakang
o Penambahan elemen selalu menggerakan variabel Tail dengan cara
increment counter Tail
- Dequeue()
o Digunakan untuk menghapus elemen terdepan/pertama dari Antrian
o Dengan cara mengurangi counter Tail dan menggeser semua
elemen antrian kedepan.
o Penggeseran dilakukan dengan menggunakan looping
- Clear()
o Untuk menghapus elemen-elemen Antrian dengan cara membuat
Tail dan Head = 1
o Penghapusan elemen-elemen Antrian sebenarnya tidak menghapus
arraynya, namun hanya mengeset indeks pengaksesan-nya ke nilai
-1 sehingga elemen-elemen Antrian tidak lagi terbaca
Tampil()
o Untuk menampilkan nilai-nilai elemen Antrian
o Menggunakan looping dari head s/d tail
 ·  Translate
STACK and QUEUE
Sat, May 25, 2013, 8:00 AM

1
Add a comment...

Yeni Septiana

Shared publicly  - 
 
Sorting in Java
Java provides two built-in ways to do sorting:
using the Arrays.sort function on an array.
using the Collections.sort function on a List.
The descriptions of these algorithms and their usage can be seen in the Java Data Structures (java.util) document in the Arrays and Collections sections, respectively. For an array, A, of any primitive types or any Object type, these are supported:
Arrays.sort(A); Arrays.sort(A, fromIndex, toIndex);
The Arrays.sort function also gives the ability to sort a range between two indices. The “toIndex” argument name is misleading since the sort range is really between fromIndex and toIndex – 1, inclusive. Thus these two calls are equivalent:
Arrays.sort(A); is the same as Arrays.sort(A, 0, A.length);
For a list, L, of Comparable elements, this is defined:
Collections.sort(L);
Comparison
When no Comparator object is passed to a sort algorithm, sorting is done using the “natural order” of supposedly Comparable elements as defined by the compareTo function. The Collections.sort does a type-check that the elements are Comparable, but Arrays.sort can only do a run-time check. All other sorting is done using a Comparator object, cmp, passed to the sort function. Here are the relevant calls:
Arrays.sort(A, cmp); Arrays.sort(A, fromIndex, toIndex, cmp); Collections.sort(L, cmp);
Demo Programs
Create the NetBeans project SortDemo which with a Main class into which you can install and run these test programs. The only other thing you’ll need is
import java.util.*;
At that point add the following code sections below and set the main function:
public static void main(String[] args) { mainBasic(args); // mainComparator(args); // mainStable(args); }
With all this in place, selectively run each main function.
Basic Example
This first example shows the sorting of an array or list of Integers using the natural order:
public static void mainBasic(String[] args) { Integer[] A = new Integer[20], B = new Integer[20]; Random r = new Random(); for (int i = 0; i < A.length; ++i) { A[i] = B[i] = new Integer(r.nextInt(40)); } List<Integer> L = new ArrayList<Integer>(Arrays.asList(A)); System.out.println("A: " + Arrays.toString(A)); Arrays.sort(A); System.out.println("A sorted: " + Arrays.toString(A)); System.out.println(); System.out.println("B: " + Arrays.toString(B)); Arrays.sort(B,3,7); System.out.println("B sorted (3,7): " + Arrays.toString(B)); System.out.println(); System.out.println("L: " + L); Collections.sort(L); System.out.println("L sorted: " + L); }
Using a comparator
This second example shows the sorting of an array or list of Integers using a comparator. The comparator makes the Integer comparsion like String comparison.
public static void mainComparator(String[] args) { Integer[] A = new Integer[20]; Random r = new Random(); for (int i = 0; i < A.length; ++i) { A[i] = new Integer(r.nextInt(20)); } Comparator<Integer> cmp = new Comparator<Integer>() {@Override public int compare(Integer lhs, Integer rhs) { return lhs.toString().compareTo(rhs.toString()); } }; List<Integer> L = new ArrayList<Integer>(Arrays.asList(A)); System.out.println("A: " + Arrays.toString(A)); Arrays.sort(A, cmp); System.out.println("A: " + Arrays.toString(A)); System.out.println(); System.out.println("L: " + L); Collections.sort(L, cmp); System.out.println("L: " + L); }
User-defined classes/Stability
This third example illustrates how sorting can be done on any user-defined class whatsoever by defining a suitable comparator for the class. The class we define called Email has data values consisting of a String from and an Date time. This program illustrates sorting in two ways, based on these two fields.
public static class Email { String from; Date time; Email( String from, Date time ) { this.from = from; this.time = time; }@Override public String toString() { return from + " : " + time; } } public static void mainStable(String[] args) { Email E[] = new Email[] { new Email( "bob", new GregorianCalendar(2008, 10, 19).getTime() ), new Email( "john", new GregorianCalendar(2008, 10, 15).getTime() ), new Email( "steve", new GregorianCalendar(2008, 10, 14).getTime() ), new Email( "john", new GregorianCalendar(2008, 10, 18).getTime() ), new Email( "bob", new GregorianCalendar(2008, 10, 16).getTime() ), new Email( "bob", new GregorianCalendar(2008, 10, 12).getTime() ), new Email( "steve", new GregorianCalendar(2008, 10, 17).getTime() ), new Email( "john", new GregorianCalendar(2008, 10, 13).getTime() ) }; Comparator<Email> cmp_from = new Comparator<Email>() {@Override public int compare(Email lhs, Email rhs) { return lhs.from.compareTo(rhs.from); } }; Comparator<Email> cmp_time = new Comparator<Email>() {@Override public int compare(Email lhs, Email rhs) { return lhs.time.compareTo(rhs.time); } }; System.out.println( "----------------- before" ); for (Email e: E) { System.out.println(e); } Arrays.sort(E, cmp_time); // sort by time System.out.println( "----------------- sorted by time" ); for (Email e: E) { System.out.println(e); } Arrays.sort(E, cmp_from); // sort by from System.out.println( "---------------- sorted by from" ); for (Email e: E) { System.out.println(e); } }
The output of this program lookes like this:
----------------- before bob : Wed Nov 19 00:00:00 GMT-05:00 2008 john : Sat Nov 15 00:00:00 GMT-05:00 2008 steve : Fri Nov 14 00:00:00 GMT-05:00 2008 john : Tue Nov 18 00:00:00 GMT-05:00 2008 bob : Sun Nov 16 00:00:00 GMT-05:00 2008 bob : Wed Nov 12 00:00:00 GMT-05:00 2008 steve : Mon Nov 17 00:00:00 GMT-05:00 2008 john : Thu Nov 13 00:00:00 GMT-05:00 2008 ----------------- sorted by time bob : Wed Nov 12 00:00:00 GMT-05:00 2008 john : Thu Nov 13 00:00:00 GMT-05:00 2008 steve : Fri Nov 14 00:00:00 GMT-05:00 2008 john : Sat Nov 15 00:00:00 GMT-05:00 2008 bob : Sun Nov 16 00:00:00 GMT-05:00 2008 steve : Mon Nov 17 00:00:00 GMT-05:00 2008 john : Tue Nov 18 00:00:00 GMT-05:00 2008 bob : Wed Nov 19 00:00:00 GMT-05:00 2008 ----------------- sort by from bob : Wed Nov 12 00:00:00 GMT-05:00 2008 bob : Sun Nov 16 00:00:00 GMT-05:00 2008 bob : Wed Nov 19 00:00:00 GMT-05:00 2008 john : Thu Nov 13 00:00:00 GMT-05:00 2008 john : Sat Nov 15 00:00:00 GMT-05:00 2008 john : Tue Nov 18 00:00:00 GMT-05:00 2008 steve : Fri Nov 14 00:00:00 GMT-05:00 2008 steve : Mon Nov 17 00:00:00 GMT-05:00 2008
Stable sort
In the above example, the first sort orders the entries by time, the second sort orders by name. The fact that the entries which have the same name are still ordered by time means that the sorting algorithm used by Java is stable. A stable sorting algorithm is one in which equal element retain their same relative ordering. In our case, all the “bob” elements which were ordered by time are equal with respect to sorting by the from field, and they are still ordered by time afterwards. This stability feature is implicitly used in virtually every User Interface program which allows the user to list elements according to different characteristics. We will see that the heapsort algorithm, is both stable and fast; this is what Java prefers as its sorting algorithm. If you take a close look at the sort of L, you’ll notice the values:
L: [(T,16), (I,16), (N,16)] L sorted by num: [ (T,16), (I,16), (N,16), ]
With respect to comparison by the integer value, the three Pair objects (T,16), (I,16), (N,16) are equal. In the sorted list, they retain their same relative order, even though it is not strictly necessary simply to be sorted. This maintenance of the same relative order of equals is an import feature of a sorting algorithm; a sorting algorithm which achieves this property is said to be stable. A stable sort gives meaningful output to sorting records on multiple keys with multiple passes of the sorting algorithm.
Sorting in Java
Sat, May 25, 2013, 8:00 AM

1
Add a comment...

Yeni Septiana

Shared publicly  - 
 
Stack


Stack adalah salah satu struktur data yang memiliki sistem kerja Last In First Out (LIFO), yang terakhir masuk pertama keluar. Dapat di ilustrasikan seperti 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.  Sebuah stack hanya dapat ditambahkan dan dikurangi elemennya hanya dari satu sisi yakni elemen atasnya atau biasa disebut Top Of Stack.

Fungsi dalam Stack:
Fungsi init: fungsi yang digunakan untuk inisialisasi atau membuat stack baru yang masih kosong.
Fungsi full: digunakan untuk mengetahui stack penuh atau tidak.
Fungsi empty: digunakan untuk mengetahui stack kosong atau tidak.
Fungsi clear: digunakan untuk mengosongkan stack. Stack dianggap kosong apabila puncak stack berada pada posisi 1.
Fungsi push: digunakan untuk menambahkan data ke dalam stack. Penambahan data tidak bisa dilakukan apabila stack sudah penuh. Urutan perintahnya adalah: menambahkan nilai top dan menambahkan data pada posisi nilai top. Jika dalam Linked List menggunakan method addLast
Fungsi pop: digunakan untuk mengeluarkan data teratas stack dengan syarat bahwa stack tidak kosong. Urutan perintahnya adalah : menghapus data pada posisi nilai top dan menurunkan nilai top. Jika dalam Linked List menggunakan method removeLast.
Penggunaan STACK :
* Perhitungan ekspresi aritmatika (posfix)
* algoritma backtraking (runut balik)
* algoritma rekursif

(cites from http://id.wikipedia.org/wiki/Stack_%28struktur_data%29)


Ilustrasi :
Misalnya dalam stack ada data A,B,C,D secara berurutan mulai dari bawah (Ascending). >> Jika ingin mengeluarkan data A, maka proses yang dilakukan : POP D –>POP C –> POP B –> POP A
>> Jika ingin memasukkan data E dibawah B, maka proses yang dilakukan adalah : POP D –> POP C –> POP B –> PUSH E
COMMON ERROR :
1. Jika kondisi stack dalam keadaan sudah penuh kemudian di-PUSH, maka akan terjadi Blue Screen
2. Jika kondisi stack dalam keadaan kosong kemudian di-POP, maka akan terjadi looping tanpa henti.
CODE
Ada 2 class yang digunakan untuk program STACK dengan paradigma OOP ini. Yang pertama Main dan Stack
CODE MAIN.JAVA

import java.util.Scanner;
public class Main {
public static void main(String[] args) {
int pilihan;
int data;
Stack result = new Stack();
//looping until false condition
do{
//Displaying Menu
System.out.println(“1. PUSH Item”);
System.out.println(“2. POP Item”);
System.out.println(“3. Lihat Isi Data”);
System.out.println(“0. Keluar”);
Scanner input = new Scanner(System.in);
System.out.println(“Masukkan Pilihan :”);
pilihan = input.nextInt();
//condition for choice
if(pilihan==1){
System.out.println(“Data yang ditambahkan : “);
data = input.nextInt();
result.push(data);
}
else if(pilihan==2){
result.pop();
}
else if(pilihan==3){
result.Display();
}
else if(pilihan==0){
System.exit(0);
}
else{
System.out.println(“Pilihan Tidak Ada!!”);
}//end of condition
} while(pilihan!=0);//end looping
}
}
CODE STACK.java
class Stack {
private boolean empty,full;
private int pos;//menujukkan tempat kosong
private int max_data = 100;
private int item [] = new int[max_data];
public Stack(){
full = false;
empty = true;
pos = 0;
}//end of constructor
//method isFull
public boolean isFull(){
return(full);
}//end of isFull method
//method isEmpty
public boolean isEmpty(){
return(empty);
}//end of isEmptyl method
//method push
public void push(int data){
if(!isFull()){
item[pos++] = data;
empty = false;
if(pos == max_data) full = true;
System.out.println(“Data sudah ditambahkan”);
}
else{
System.out.println(“Stack sudah penuh”);
}
return;
}//end of push method
//method pop
public int pop(){
int x = 0;
if(!isEmpty()){
x = item[--pos];
full = false;
System.out.println(“Data yang di POP adalah :” + item[pos]);
System.out.println(“”);
item[pos]=0;
if(pos==0)empty = true;
else{
System.out.println(“Stack Kosong!”);
}
}else{
System.out.println(“Stack Masih Kosong!\n”);
}
return(x);
}//end of pop method
//method Display
public void Display(){
System.out.println(“Isi Stack Adalah : “);
//printing list item
for(int i=0; i<pos; i++){
System.out.print(item[i]+" ");
}
System.out.println("\n");
}//end of Display
}

IMPLEMENTASI PADA PROGRAM


Bagian progam. 
Tumpukan.java





public class Tumpukan {
     
        public int ukuran;
        public long [] tumpukan;
        public int top;
         
public Tumpukan(int s){
    ukuran = s;
    tumpukan = new long [ukuran];
    top = -1;
}
public void push(long j){
    tumpukan[++top] = j;
}
public long pop(){
    return tumpukan[top-];
}
public long peek(){
    return tumpukan[top];
}
public boolean isEmpty(){
    return (top == ukuran-1);
}
public boolean isFull(){
    return(top == ukuran-1);
     
}
public void baca(){
    int i=top;
    while (i>0){
        System.out.print(tumpukan[i]);
        System.out.print(" ");
        i--;
    }
    System.out.println(" ");
}
}



Program Pemanggil: aplistack.java






public class aplistack{
    public static void main (String [] args){
        Tumpukan tumpukan=new Tumpukan(10);
        tumpukan.push(56);
        tumpukan.baca();
        tumpukan.push(45);
        tumpukan.baca();
        tumpukan.push(67);
        tumpukan.baca();
        long nilai1=tumpukan.pop();
        System.out.println("nilai1 = "+nilai1);
        System.out.println(" ");
        tumpukan.push(83);
        tumpukan.baca();
        tumpukan.push(27); 
        tumpukan.baca();
        long nilai2 = tumpukan.pop();
        System.out.print("nilai2 = "+nilai2);
        System.out.println(" ");
        long nilai3 = tumpukan.pop();
        System.out.println("nilai3 = "+nilai3);
        System.out.println(" ");
        tumpukan.baca();
         
         
    }
 ·  Translate
stack
Sat, May 25, 2013, 8:00 AM

1
Add a comment...

Yeni Septiana

Shared publicly  - 
 
Queue
Queue (antrian) adalah struktur data dimana data yang pertama kali dimasukkan adalah data yang pertama kali bisa dihapus. Atau bisa juga disebut dengan struktur data yang menggunakan mekanisme FIFO (First In First Out).


Fungsi dalam Queue:
Fungsi init : digunakan untuk membuat queue baru atau kosong, yaitu dengan memberi nilai awal (head) dan nilai akhir (tail) dengan -1.
Fungsi full: digunakan untuk mengetahui apakah queue sudah penuh atau belum. Dilakukan dengan memeriksa nilai akhir (tail) apakah sudah sama dengan maksimal queue.
Fungsi empty: digunakan untuk mengetahui apakah queue masih kosong atau tidak. Dilakukan dengan memeriksa nilai akhir (tail) bernilai -1 atau tidak.
Fungsi enqueue : digunakan untuk menambahkan elemen ke dalam queue.
Fungsi dequeue : digunakan untuk mengambil elemen dari queue, dengan cara memindahkan semua elemen satu langkah ke posisi depannya sehingga elemen yang paling depan tertimpa.
Fungsi clear : digunakan untuk menghapus semua elemen dalam queue. Ada dua cara yang bisa digunakan, yaitu menuliskan fungsi seperti inisialisasi atau memanggil fungsi remove sampai queue kosong.
Istilah-istilah yang digunakan dalam queue (antrian)
Memasukkan data (insert) disebut juga dengan put, add, atau enqueue. 
Menghapus data (remove) biasa disebut dengan istilah delete, get, atau dequeue. 
Bagian belakang queue, dimana data bisa dimasukkan disebut dengan back, tail (ekor), atau end (akhir).
Sedangkan bagian depan (front) queue dimana data bisa dihapus juga biasa disebut dengan istilah kepala (head).
Circular Queue
Di dunia nyata apabila seseorang sedang mengantri (misalnya antri tiket kereta api), apabila telah dilayani dan memperoleh tiket, maka ia akan keluar dari antrian dan orang-orang yang berada di belakangnya akan bergerak maju ke dapan. Kita bisa saja menggerakkan setiap item data ke depan apabila kita menghapus data yang terdepan, tetapi hal ini kurang efektif. Sebaliknya kita tetap menjaga setiap item data di posisinya, yang kita lakukan hanyalah merubah posisi front dan rear saja.

Queue.java
class Queue
{
private int maxSize;
private long[] queArray;
private int front;
private int rear;
private int nItems;
//————————————————————–
public Queue(int s)          // konstruktor
{
maxSize = s;
queArray = new long[maxSize];
front = 0;
rear = -1;
nItems = 0;
}
//————————————————————–
public void insert(long j)   // letakkan item (data) di posisi belakang dari queue
{
if(rear == maxSize-1)         //
rear = -1;
queArray[++rear] = j;         //naikkan rear dan masukkan item (data) pada posisi rear yang baru
nItems++;                     //tambah satu item lagi
}
//————————————————————–
public long remove()         // hapus item (data) yang berada pada posisi front
{
long temp = queArray[front++]; //dapatkan nilainya dan naikkan front
if(front == maxSize)           //
front = 0;
nItems–;                      // item (data) berkurang satu
return temp;
}
//————————————————————–
public long peekFront()      //
{
return queArray[front];
}
//————————————————————–
public boolean isEmpty()    //benar jika queue-nya kosong
{
return (nItems==0);
}
//————————————————————–
public boolean isFull()     // benar jika queue-nya penuh
{
return (nItems==maxSize);
}
//————————————————————–
public int size()           // jumlah ietm (data) dalam queue
{
return nItems;
}
//————————————————————–
}  // end class Queue
QueueApp.java
class QueueApp
{
public static void main(String[] args)
{
Queue theQueue = new Queue(5);  // queue menampung 5 item (data)
theQueue.insert(10);            // masukkan 4 item (data)
theQueue.insert(20);
theQueue.insert(30);
theQueue.insert(40);
theQueue.remove();              // hapus 3 item (data)
theQueue.remove();              //    (10, 20, 30)
theQueue.remove();
theQueue.insert(50);            // masukkan 4 item (data) lagi
theQueue.insert(60);            //    (wraps around)
theQueue.insert(70);
theQueue.insert(80);
while( !theQueue.isEmpty() )    // hapus dan tampilkan
{                            //    all items
long n = theQueue.remove();  // (
System.out.print(n);
System.out.print(“ “);
}
System.out.println(“”);
}  // end main()
}  // end class QueueApp
method insert()
Method insert() mengasumsikan bahwa queue tidak penuh (full). Kita tidak melihatnya dalam main(), tetapi kita bisa memanggil insert() hanya setelah memanggil isFull() dan memperoleh nilai kembalian yang salah. Pengisian data dengan cara menaikkan rear dan mengisikan data baru tersebut pada rear yang baru sekarang. Tetapi, jika rear berada di puncak array, pada maxSize-1, maka harus kembali ke posisi terbawah array sebelum penyisipan dilakukan. Caranya dengan memberi nilai rear=-1, sehingga jika terjadi kenaikan pada pada rear, maka rear akan menjadi 0, dasar dari array. Dan akhirnya, nItem bertambah.
Method remove()
method remove mengasumsikan queue-nya tidak kosong. Untuk meyakinkan bahwa queue-nya tidak kosong, anda harus memanggil method isEmpty(). Penghapusan selalu dimulai dengan memperoleh nilai pada front dan kemudian mengurangi front. Jika front-nya terletak pada akhir array, maka harus kembali ke 0. Kemudian nItems dikurangi.
Method peek()
untuk mendapatkan nilai pada front.
Method isEmpty(), isFull(), and size()
untuk mengecek nItems, apakah kosong atau penuh.
 ·  Translate
1
Add a comment...
Have him in circles
5 people

Yeni Septiana

Shared publicly  - 
 
JTree merupakan komponen yang digunakan untuk membuat struktur pohon. Salah satu yang membuat rumit di JTree adalah cara menambah datanya. Anda perlu membuat TreeModel dan juga menambahkan MutableTreeNode. Sayangnya tidak ada kelas yang dapat menyederhanakan proses pembuatan data di JTree.
Jikalau bisa disederhanakan, kenapa tidak Anda yang mencoba untuk menyederhanakan cara pembuatan data di JTree? Dan artikel ini akan membahas tentang membuat JTree dinamis sederhana. Hanya ada satu root dan beberapa child :



Root
|_Child 1
|_Child 2
|_Child 3
|_Child 4
|_Child 5
|_Child 6
|_Child 7
|_Child 8
Membuat Kelas Creator
Untuk mempermudah pembuatan data di JTree, ada baiknya kita buat kelas Creator. Creator maksudnya kelas ini yang akan kita gunakan untuk membuat data TreeModel untuk JTree.
Sederhananya, kurang lebih kelasnya seperti pada kode dibawah ini :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
/
Copyright (c) 2011, StripBandunk and/or its affiliates. All rights reserved.

http://stripbandunk.com/

STRIPBANDUNK PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
/
package stripbandunk.tutorial.jtreedemo;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.DefaultTreeModel;
import javax.swing.tree.TreeModel;
/*

@author Eko Kurniawan Khannedy
*/
public class TreeModelCreator {
private DefaultTreeModel model;
private DefaultMutableTreeNode root;
public TreeModelCreator(String rootData) {
root = new DefaultMutableTreeNode(rootData);
model = new DefaultTreeModel(root);
}
public void addChild(String child) {
root.add(new DefaultMutableTreeNode(child));
}
public TreeModel getModel() {
return model;
}
}
view raw TreeModelCreator.java 
Menggunakan Kelas Creator untuk JTree
Setelah membuat kelas TreeModelCreator, kita dapat menggunakan kelas tersebut untuk membuat TreeModel untuk JTree, contohnya seperti berikut :


TreeModelCreator creator = new TreeModelCreator("Root");
creator.addChild("Eko");
creator.addChild("Kurniawan");
creator.addChild("Khannedy");
creator.addChild("StripBandunk");
jTreeSample.setModel(creator.getModel());
view raw Form.java This Gist brought to you by GitHub.
Hasil Akhir
Hasil akhirnya adalah sebagai berikut :
 ·  Translate
Jtree
Sat, May 25, 2013, 8:00 AM

1
Add a comment...

Yeni Septiana

Shared publicly  - 
 
MAP
MAP pada JAVA
 Suatu peta (map) adalah generalisasi dari array. Seperti array, map juga memiliki operasi untuk mengambil dan meletakkan elemen. Akan tetapi pada map, operasi ini tidak dilakukan pada bilangan 0, 1, ... N-1, akan tetapi pada sembarang Object.
Beberapa bahasa pemrograman menggunakan istilah array asosiatif (associative array) karena kesamaan perintah dengan array biasa. Pada bahasa pemrograman tersebut, kita bisa menuliskan A["andi"] yang digunakan untuk memetakan "andi" pada suatu elemen di dalam array.
Java tidak menggunakan perintah yang sama pada map, akan tetapi idenya serupa : Map adalah seperti array yang indeksnya adalah objek sembarang, bukan integer. Pada map, objek yang digunakan sebagai "indeks" disebut kunci (key). Objek yang ditunjuk oleh indeks tersebut disebut nilai (value).
Satu kunci hanya boleh menunjuk pada satu nilai, akan tetapi satu nilai bisa ditunjuk oleh beberapa kunci.
Dalam Java, map didefinisikan dalam interface java.util.Map, yang memiliki beberapa metode untuk bekerja dengan map. Jika map adalah variabel dengan tipe Map, maka berikut ini adalah beberapa metodenya :
map.get(kunci) -- mengembalikan Object yang ditunjuk oleh kunci. Jika map tidak memiliki nilai yang ditunjuk oleh kunci, maka nilai null akan dikembalikan. Tapi ingat juga bahwa mungkin saja kuncinya ada akan tetapi memang menunjuk pada nilai null. Menggunakan "map.get(kunci)" sama dengan perintah "A[kunci]" pada array A. (Akan tetapi pada map tidak ada pengecualian IndexOutOfBoundsException)
map.put(kunci, nilai) -- Mengisi map dengan pasangan kunci dan nilai. Kedua-dua kunci dan nilai bisa berupa objek apa saja. Jika map tersebut telah memiliki kunci maka nilai yang ditunjuk akan diganti dengan yang baru diberikan. Perintah ini mirip dengan "A[kunci] = nilai" pada array.
map.putAll(map2) -- jika map2 adalah map lain, maka perintah ini akan mengkopi semua isi pada map2 ke dalam map.
map.remove(kunci) -- Jika map memiliki kunci yang menunjuk pada suatu nilai, perintah ini akan menghapus kunci beserta nilai yang ditunjuknya, atau dengan kata lain menghapus pasangan kunci dan nilai pada map sekaligus.
map.containsKey(kunci) -- mengembalikan nilai boolean true jika map memiliki kunci yang merujuk pada suatu nilai
map.containsValue(nilai) -- mengembalikan nilai boolean true jika map memiliki nilai yang ditunjuk oleh kunci apapun.
map.size() -- mengembalikan int yang berisi jumlah pasangan asosiasi pada map.
map.isEmpty() -- mengembalikan boolean true jika map tidak berisi pasangan asosiasi apa-apa.
map.clear() -- menghapus semua pasangan asosiasi dalam map.
Metode put dan get jelas merupakan metode yang paling sering digunakan dalam map. Dalam banyak aplikasi, metode ini mungkin hanya metode ini yang kita butuhkan. Artinya, menggunakan map sama mudahnya dengan menggunakan array biasa.

Java memiliki dua kelas yang mengimplementasikan interface Map, yaitu : TreeMap dan HashMap.
Dalam TreeMap, pasangan kunci/nilai disimpan secara berurutan dalam pohon terurut, yaitu diurut berdasarkan kuncinya. Supaya bisa bekerja dengan benar, maka hanya objek yang bisa dibandingkan saja yang bisa digunakan sebagai kunci. Artinya kelas kunci harus berupa kelas yang mengimplementasikan interface Comparable, atau Comparator harus diberikan pada konstruktornya pada saat TreeMap dibuat.
HashMap tidak menyimpan pasangan kunci/nilai dalam urutan tertentu, sehingga tidak ada batasan objek apa yang bisa disimpan di dalamnya. Hampir semua operasi dapat berjalan lebih cepat pada HashMap dibandingkan dengan TreeMap.
Secara umum, lebih baik menggunakan HashMap kecuali kita butuh struktur data dalam urutan tertentu yang hanya bisa dilakukan dengan TreeMap. Atau dengan kata lain, jika kita hanya menggunakan perintah put dan get, gunakan HashMap.
Misalnya progrma direktori telefon, yaitu pada kelas BukuTelepon yang memiliki pasangan nama/nomor telepon. Kelas ini memiliki operasi tambahEntri(nama, nomor) dan ambilNomor(nama), di mana nama dan nomor bertipe String.

Dalam aplikasi pemrograman sebenarnya, kita tidak perlu lagi membuat kelas baru untuk mengimplementasikan BukuTelepon tersebut, artinya kita bisa langsung menggunakan Map. Akan tetapi menggunakan Map mungkin memiliki sedikit kerugian, karena kita dipaksa harus menggunakan Object bukan String.
Jika ini masalahnya, maka kita bisa membuat kelas baru yang menggunakan Map dalam implementasinya, seperti berikut :
import java.util.HashMap;   public class BukuTelepon {   // Menyimpan data telepon private HashMap info = new HashMap();   public void tambahEntri(String nama, String nomor) { // Menyimpan nomor telepon pada nama yang sesuai info.put(nama,nomor); }   public String ambilNomor(String nama) { // Mengambil nomor telepon dari nama // Kembalikan null jika tidak ada nomor telepon untuk nama tsb return (String)info.get(nama); }   } // akhir kelas BukuTelepon
Dalam metode ambilNomor di atas, nilai kembalian dari info.get(nama) di-type-cast ke dalam String. Karena kembalian dari metode get() bertipe Object maka type cast menjadi penting sebelum nilainya bisa digunakan.
Dengan "membungkus" Map di dalam kelas BukuTelepon, kita menyembunyikan type-cast dalam implementasinya sehingga interaksi kelas ini dengan kelas lain yang menggunakannya menjadi lebih natural.


HashMap adalah kelas implementasi dari Map, Map itu sendiri adalah interface yang mempunyai fungsi untuk memetakan nilai dengan key unik. HashMap sangat bermanfaat sebagai memory record management, dimana tiap record dapat disimpan disebuah Map.

//HashMap adalah class implementasi dari Map, Map itu sendiri adalah
    //interface yang mempunyai fungsi untuk memetakan nilai dengan key unik.
    //HashMap sangat bermanfaat sebagai memory record management, dimana
    //tiap record dapat disimpann di sebuah Map, kemudian setiap Map
    //diletakkan pada vector, list atau set yang masih turunan dari Collection
    //Demikian pula Hashmap sangat baik untuk menghandle resultset dari hasil query.
   

  Map arecord= new HashMap();
    arecord.put("id","1000");
    arecord.put("nama","Sintha");
    arecord.put("alamat","Jl. Jeruk No 10");
  
    //mengambil data map dengan method get()
    System.out.println(arecord.get("id"));
    System.out.println(arecord.get("nama"));
    System.out.println(arecord.get("alamat"));
  
    //Meletakkan map ke vector
    Vector mhsList = new Vector();
    mhsList.add(arecord);
    //menambah record
    arecord=new HashMap();
    arecord.put("id","1001");
    arecord.put("nama","Kina");
    arecord.put("alamat","Jl. Sudirman ");
    mhsList.add(arecord);
  
    //mencetak virtual table (vector mhsList)
    for (int i=0;i<mhsList.size();i++){
      System.out.print(((Map)mhsList.get(i)).get("id") +"|");
      System.out.print(((Map)mhsList.get(i)).get("nama") +"|");
      System.out.println(((Map)mhsList.get(i)).get("alamat") +"|");
    
    }


Treemap adalah salah satu implementasi dari class interface yang mengurutkan koleksi berdasarkan key dari elemen berupa pasangan <key, value>.
 
Dari pengalaman penulis, TreeMap sangat berguna terutama untuk mengelola antrian berdasarkan key atau index, bukan value atau nilainya. 
 Berikut adalah contoh kode program sederhana yang memasukkan dan menghilangkan elemen dengan value berupa array 2 dimensi bertipe dobel.

Contoh 
package com.kursusinternet.collection;

import java.util.TreeMap;
import java.util.Map.Entry;

public class ContohTreeMap {
    /**
     * Menambahkan titik koordinat (x,y) pada nodelist dengan pengenal "key"
     */
  public static void inputKoordinat(TreeMap<Integer, Double[]> nodeList,
      int key, double x, double y) {
    Double[] node = new Double[2];
    node[0] = x;
    node[1] = y;
    nodeList.put(key, node);
  }

    /**
     * Menghilangkan titik koordinat pada nodelist dengan pengenal "key"
     */
  public static void removeKoordinat(TreeMap<Integer, Double[]> nodeList,
      int key) {
    nodeList.remove(key);
  }

  public static void main(String[] args) {
    TreeMap<Integer, Double[]> titik = new TreeMap<Integer, Double[]>();

    inputKoordinat(titik, 5, 3.2, 5.4);
    inputKoordinat(titik, 3, 10.22, 11.23);
    inputKoordinat(titik, 1, 7.1, 7.5);

    removeKoordinat(titik, 3);

    for (Entry<Integer, Double[]> entry : titik.entrySet())
    {
      System.out.println("Entri " + entry.getKey() + ", elemen ke 0 = " + entry.getValue()[0]);
      System.out.println("Entri " + entry.getKey() + ", elemen ke 1 = " + entry.getValue()[1]);
    }
  }
}

Hasil
Entri 1,0 =7.1
Entri 1,1 =7.5
Entri 5,0 =3.2
Entri 5,1 =5.4
 ·  Translate
1
Add a comment...

Yeni Septiana

Shared publicly  - 
 
Linked List
The LinkedList class extends AbstractSequentialList and implements the List interface. It provides a linked-list data structure. It has the two constructors, shown here:
LinkedList( )
LinkedList(Collection c)
The first constructor builds an empty linked list. The second constructor builds a linked list that is initialized with the elements of the collection c.
In addition to the methods that it inherits, the LinkedList class defines some useful methods of its own for manipulating and accessing lists. To add elements to the start of the list, use addFirst( ); to add elements to the end, use addLast( ). Their signatures are shown here:
void addFirst(Object obj)
void addLast(Object obj)
Here, obj is the item being added.
To obtain the first element, call getFirst( ). To retrieve the last element, call getLast( ). Their signatures are shown here:
Object getFirst( )
Object getLast( )
To remove the first element, use removeFirst( ); to remove the last element, call removeLast( ). They are shown here:
Object removeFirst( )
Object removeLast( )
The following program illustrates several of the methods supported by LinkedList:
// Demonstrate LinkedList.
import java.util.*;
class LinkedListDemo {
public static void main(String args[]) {
// create a linked list
LinkedList ll = new LinkedList();
// add elements to the linked list
ll.add(“F”);
ll.add(“B”);
ll.add(“D”);
ll.add(“E”);
ll.add(“C”);
ll.addLast(“Z”);
ll.addFirst(“A”);
ll.add(1, “A2″);
System.out.println(“Original contents of ll: ” + ll);
// remove elements from the linked list
ll.remove(“F”);
ll.remove(2);
System.out.println(“Contents of ll after deletion: ”
+ ll);
// remove first and last elements
ll.removeFirst();
ll.removeLast();
System.out.println(“ll after deleting first and last: ”
+ ll);
// get and set a value
Object val = ll.get(2);
ll.set(2, (String) val + ” Changed”);
System.out.println(“ll after change: ” + ll);
}
}
The output from this program is shown here:
Original contents of ll: [A, A2, F, B, D, E, C, Z]
Contents of ll after deletion: [A, A2, D, E, C, Z]
ll after deleting first and last: [A2, D, E, C]
ll after change: [A2, D, E Changed, C]
Because LinkedList implements the List interface, calls to add(Object) append items to the end of the list, as does addLast( ). To insert items at a specific location, use the add(int, Object) form of add( ), as illustrated by the call to add(1, “A2″) in the example. Notice how the third element in ll is changed by employing calls to get( ) and set( ). To obtain the current value of an element, pass get( ) the index at which the element is stored. To assign a new value to that index, pass set( ) the index and its new value.
LInked list
Sat, May 25, 2013, 8:00 AM

1
Add a comment...

Yeni Septiana

Shared publicly  - 
 
Queue
Queue (antrian) adalah struktur data dimana data yang pertama kali dimasukkan adalah data yang pertama kali bisa dihapus. Atau bisa juga disebut dengan struktur data yang menggunakan mekanisme FIFO (First In First Out).


Fungsi dalam Queue:
Fungsi init : digunakan untuk membuat queue baru atau kosong, yaitu dengan memberi nilai awal (head) dan nilai akhir (tail) dengan -1.
Fungsi full: digunakan untuk mengetahui apakah queue sudah penuh atau belum. Dilakukan dengan memeriksa nilai akhir (tail) apakah sudah sama dengan maksimal queue.
Fungsi empty: digunakan untuk mengetahui apakah queue masih kosong atau tidak. Dilakukan dengan memeriksa nilai akhir (tail) bernilai -1 atau tidak.
Fungsi enqueue : digunakan untuk menambahkan elemen ke dalam queue.
Fungsi dequeue : digunakan untuk mengambil elemen dari queue, dengan cara memindahkan semua elemen satu langkah ke posisi depannya sehingga elemen yang paling depan tertimpa.
Fungsi clear : digunakan untuk menghapus semua elemen dalam queue. Ada dua cara yang bisa digunakan, yaitu menuliskan fungsi seperti inisialisasi atau memanggil fungsi remove sampai queue kosong.
Istilah-istilah yang digunakan dalam queue (antrian)
Memasukkan data (insert) disebut juga dengan put, add, atau enqueue. 
Menghapus data (remove) biasa disebut dengan istilah delete, get, atau dequeue. 
Bagian belakang queue, dimana data bisa dimasukkan disebut dengan back, tail (ekor), atau end (akhir).
Sedangkan bagian depan (front) queue dimana data bisa dihapus juga biasa disebut dengan istilah kepala (head).
Circular Queue
Di dunia nyata apabila seseorang sedang mengantri (misalnya antri tiket kereta api), apabila telah dilayani dan memperoleh tiket, maka ia akan keluar dari antrian dan orang-orang yang berada di belakangnya akan bergerak maju ke dapan. Kita bisa saja menggerakkan setiap item data ke depan apabila kita menghapus data yang terdepan, tetapi hal ini kurang efektif. Sebaliknya kita tetap menjaga setiap item data di posisinya, yang kita lakukan hanyalah merubah posisi front dan rear saja.

Queue.java
class Queue
{
private int maxSize;
private long[] queArray;
private int front;
private int rear;
private int nItems;
//————————————————————–
public Queue(int s)          // konstruktor
{
maxSize = s;
queArray = new long[maxSize];
front = 0;
rear = -1;
nItems = 0;
}
//————————————————————–
public void insert(long j)   // letakkan item (data) di posisi belakang dari queue
{
if(rear == maxSize-1)         //
rear = -1;
queArray[++rear] = j;         //naikkan rear dan masukkan item (data) pada posisi rear yang baru
nItems++;                     //tambah satu item lagi
}
//————————————————————–
public long remove()         // hapus item (data) yang berada pada posisi front
{
long temp = queArray[front++]; //dapatkan nilainya dan naikkan front
if(front == maxSize)           //
front = 0;
nItems–;                      // item (data) berkurang satu
return temp;
}
//————————————————————–
public long peekFront()      //
{
return queArray[front];
}
//————————————————————–
public boolean isEmpty()    //benar jika queue-nya kosong
{
return (nItems==0);
}
//————————————————————–
public boolean isFull()     // benar jika queue-nya penuh
{
return (nItems==maxSize);
}
//————————————————————–
public int size()           // jumlah ietm (data) dalam queue
{
return nItems;
}
//————————————————————–
}  // end class Queue
QueueApp.java
class QueueApp
{
public static void main(String[] args)
{
Queue theQueue = new Queue(5);  // queue menampung 5 item (data)
theQueue.insert(10);            // masukkan 4 item (data)
theQueue.insert(20);
theQueue.insert(30);
theQueue.insert(40);
theQueue.remove();              // hapus 3 item (data)
theQueue.remove();              //    (10, 20, 30)
theQueue.remove();
theQueue.insert(50);            // masukkan 4 item (data) lagi
theQueue.insert(60);            //    (wraps around)
theQueue.insert(70);
theQueue.insert(80);
while( !theQueue.isEmpty() )    // hapus dan tampilkan
{                            //    all items
long n = theQueue.remove();  // (
System.out.print(n);
System.out.print(“ “);
}
System.out.println(“”);
}  // end main()
}  // end class QueueApp
method insert()
Method insert() mengasumsikan bahwa queue tidak penuh (full). Kita tidak melihatnya dalam main(), tetapi kita bisa memanggil insert() hanya setelah memanggil isFull() dan memperoleh nilai kembalian yang salah. Pengisian data dengan cara menaikkan rear dan mengisikan data baru tersebut pada rear yang baru sekarang. Tetapi, jika rear berada di puncak array, pada maxSize-1, maka harus kembali ke posisi terbawah array sebelum penyisipan dilakukan. Caranya dengan memberi nilai rear=-1, sehingga jika terjadi kenaikan pada pada rear, maka rear akan menjadi 0, dasar dari array. Dan akhirnya, nItem bertambah.
Method remove()
method remove mengasumsikan queue-nya tidak kosong. Untuk meyakinkan bahwa queue-nya tidak kosong, anda harus memanggil method isEmpty(). Penghapusan selalu dimulai dengan memperoleh nilai pada front dan kemudian mengurangi front. Jika front-nya terletak pada akhir array, maka harus kembali ke 0. Kemudian nItems dikurangi.
Method peek()
untuk mendapatkan nilai pada front.
Method isEmpty(), isFull(), and size()
untuk mengecek nItems, apakah kosong atau penuh.
 ·  Translate
queue
Sun, May 26, 2013, 7:00 PM GMT+7
Indonesia

1
Add a comment...

Yeni Septiana

Shared publicly  - 
 
Array

 ARRAY adalah adalah Tipe terstruktur yang terdiri dari sejumlah komponen-komponen yang mempunyai tipe yang sama. Sebelum digunakan, variabel array perlu dideklarasikan terlebih dahulu. Cara mendeklarasikan variabel array sama seperti deklarasi variabel yang lainnya, hanya saja diikuti oleh suatu indek yang menunjukan jumlah maksimum data yang disediakan.
Fungsi Array adalah menampung sejumlah data yang mempunyai tipe data yang sama dengan tipe data Array tersebut.

Array pada pemrogramman Java, dapat dibagi menjadi 2 bagian besar, yaitu Array Berdimensi Satu dan Array Multidimensi.
A. Array Berdimensi Satu
Bentuk pendekarasian Array Berdimensi Satu pada pemrograman Java, seperti dibawah ini:
tipe_data[] nama_var_array;
nama_var_array = new tipe_data[ukuran];

Contoh pendeklarasian :
int[] nilai;
nilai = new int[10];

a. Memasukan Nilai ke Array
Untuk memasukan nilai kedalam elemen array, dengan cara menyebutkan index untuk elemen array tersebut. Index dimulai dari index ke 0, bukan dari index ke 1.

nilai[0] = 70;
nilai[1] = 60;
nilai[2] = 80;

b. Mengambil Nilai dari Array
Untuk mengambil nilai dari dalam elemen array, dengan cara yang sama seperti memasukan kedalam elemen array, yaitu dengan menyebutkan index dari elemen array tersebut.

nilai[0];
nilai[1];
System.out.println("Nilai Elemen : " + nilai[0]);

Berikut contoh program array untuk menghitung total nilai dan nilai rata-rata elemen array.
01./* --------------------------
02.Nama File : Array_D1_01.java
03.Author    : Frieyadie
04.------------------------------- /
05. 
06.import java.util.;
07.class Array_D1_01
08.{
09.public static void main(String[] args)
10.{
11.int a, n, jml_nil=0;
12.double nil_rata=0;
13.int[] nilai;         // deklarasi variabel array
14.nilai = new int[10]; // membuat objek array
15. 
16.Scanner input = new Scanner(System.in);
17. 
18.System.out.print("Masukkan Banyak Data = ");
19.n = input.nextInt();
20. 
21.System.out.println("");
22. 
23.//Memasukan Data ke Elemen Array
24.for(a=0; a<n; a++)
25.{
26.System.out.print("Masukkan Array ke " + a + " = ");
27.nilai[a] = input.nextInt();
28.}
29. 
30.//Menampilkan Data ke Elemen Array
31. 
32.System.out.println("\n\nData Yang Diinput ke Elemen Array \n");
33. 
34.for(a=0; a<n; a++)
35.{
36.System.out.print("Nilai ke - " + a );
37.System.out.println(" = " + nilai[a]);
38.jml_nil = jml_nil + nilai[a];
39.}
40. 
41.nil_rata = jml_nil / n;
42. 
43.System.out.println("\n---------------------------------");
44.System.out.println("Jumlah Array Nilai          = " + jml_nil);
45.System.out.println("Nilai Rata-Rata Array Nilai = " + nil_rata);
46.}
47.}
 
Rumus skrip untuk mengetahui jumlah data dari Array

(nama Array).length
(nama Array)= Nama dari suatu Array
.length= digunakan oleh Java untuk mengambil jumlah data dari Array, jumlah tersebut mempunyai tipe data Integer dan int
Silahkan pelajari skrip dibawah ini yang dicetak tebal
——————^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^——————
package pelajaranjava;
import java.io.*;
public class Main {
public static void main(String[] args) {
String[]hari={“Senin”, “Selasa”, “Rabu”, “Kamis”, “Jumat”,”Sabtu”,”Minggu”};

System.out.println(hari.length);
}
}
 ·  Translate
Array
Sat, May 25, 2013, 8:00 AM

1
Add a comment...
People
Have him in circles
5 people
Places
Map of the places this user has livedMap of the places this user has livedMap of the places this user has lived
Currently
Palembang
Education
  • universitas bina darma
Basic Information
Gender
Male