[Java] sorting algorithm dan analisa runtime [include source code]

Algoritma Sorting merupakan algoritma yang digunakan untuk mengurutkan data baik secara ascending maupun descending. Efesiensi algoritma sorting sangat penting untuk optimasi dalam penggunaan dengan algoritma yang lain, contohnya algoritma seraching dan merge yang memerlukan pengurutan secara benar dan cepat.  Terdapat berbagai algoritma sorting yang sering digunakan. Algoritma-algoritma tersebut adalah :


•    Bubble sort
•    Insertion sort
•    Shell sort
•    Merge sort
•    Heapsort
•    Quicksort
•    Counting Sort
•    Bucket sort
•    Radix sort
•    Distribution sort

Dalam analisa run time algoritma sorting ini, penulis menggunakan 4 algoritma yaitu :
•    Selection Sort
•    Insertion Sort
•    Buble Sort
•    Merge Sort

Metode yang digunakan untuk uji coba analisa running time ini adalah dengan mengimplementasikan algoritma sorting ke dalam bahasa Java dengan editor Netbeans. Selanjutnya akan diberikan input yang sama untuk membandingkan  aktu yang diperlukan masing-masing algoritma untuk mengurutkan data.  Input data dalam analisa algoritma sorting ini menggunakan bilangan random dari  0 sampai 1000. Bilangan random ini digenerate oleh sebuah method yang diberi nama generateInput();  Netbeans dilengkapi dengan fasilitas profiling yang bisa digunakan untuk menganalisa performance dari program yang diekskusi. Fasilitas profiling ini yang digunakan penulis untuk menganalisa running time masing-masing algoritma.

Analisa Running Time  ( dalam satuan ms)

Jumlah InputSelection SortInsertion SortMerge SortQuick Sort
1000.1410.1040.0360.011
10002.161.800.0430.030
1000014167.70.3510.046
1000001286659821.530.029
100000013277576777154.970.032

Berikut adalah Source Code Sorting dengan Java :  

/**
 * @author resika arthana
 */
package daa;
import java.util.Random;
public class Sorting {
    public int[] selectionSort(int[] arr) {
      int i, j, minIndex, tmp;
      int n = arr.length;
      for (i = 0; i < n – 1; i++) {
           minIndex = i;
            for (j = i + 1; j < n; j++)
                  if (arr[j] < arr[minIndex])
                        minIndex = j;
            if (minIndex != i) {
                  tmp = arr[i];
                  arr[i] = arr[minIndex];
                  arr[minIndex] = tmp;
            }
      }
      return arr;
    }
   
    public int[] insertionSort(int[] arr) {
      int i, j, newValue;
      for (i = 1; i < arr.length; i++) {
            newValue = arr[i];
            j = i;
            while (j > 0 && arr[j – 1] > newValue) {
                  arr[j] = arr[j – 1];
                  j–;
}
            arr[j] = newValue;
      }
      return arr;
    }    public int[] bubbleSort(int[] arr) {
      boolean swapped = true;
      int j = 0;
      int tmp;
      while (swapped) {
            swapped = false;
            j++;
            for (int i = 0; i < arr.length – j; i++) {
                  if (arr[i] > arr[i + 1]) {
                        tmp = arr[i];
                        arr[i] = arr[i + 1];
                        arr[i + 1] = tmp;
                        swapped = true;
                  }
             }
        }
      return arr;
     }
   
    int partition(int arr[], int left, int right)
    {
int i = left, j = right;
      int tmp;
      int pivot = arr[(left + right) / 2];
      while (i < = j) {
            while (arr[i] < pivot)
                  i++;
            while (arr[j] > pivot)
                  j–;
            if (i < = j) {
                  tmp = arr[i];
                  arr[i] = arr[j];
                  arr[j] = tmp;
                  i++;
                  j–;
            }
      };
      return i;
    }
   public int[] quickSort(int arr[], int left, int right) {
          int index = partition(arr, left, right);
          if (left < index – 1)
                quickSort(arr, left, index – 1);
          if (index < right)
                quickSort(arr, index, right);
          return arr;
    }   public int[] generateInput(int jum){
int[] arr= new int[jum];
       Random ran=new Random();
       for (int i=0; i<jum;i++){
           arr[i]=ran.nextInt(100000000);
       }
       return arr;
   }
   public void printArray(int arr[]){
       for (int i=0;i<arr.length;i++){
           System.out.println("data ke "+i+" : "+arr[i]);
       }
   }
   public static void main(String[] args){
       Sorting sort=new Sorting();
       int jumInput=1000000; //jumlah input
       int[] inputArr=sort.generateInput(jumInput);
       int[] outputArr;
     
       System.out.println("JUM INPUT :  "+jumInput);
       outputArr=sort.insertionSort(inputArr);
       outputArr=sort.bubbleSort(inputArr);
       outputArr=sort.quickSort(inputArr,0,0);
       outputArr=sort.selectionSort(inputArr);
       //sort.printArray(outputArr);
   
     
   }

}

Sejarah Band KOTAK

Kotak terbentuk tanggal 27 September 2004 dalam acara The Dream Band. Kotak dipertemukan sejak audisi The Dream Band di Jakarta. Produser (Dody-Kahitna) mengaudisi drummer, gitaris, bassis, vokalis dari kota Jakarta, dari peserta 400 orang vokalis menjadi 2 orang, 170 bassis menjadi 2 orang, ratusan gitaris menjadi 3 orang, ratusan drummer juga menjadi 2 orang dan dari 9 orang yang lolos audisi, dibentuk 2 band yaitu Kotak yg personilnya 4 orang, dan Lima yang personilnya 5 orang. Nama Kotak berarti 4 sisi dan 4 sudut yang bersatu menjadi bidang Kotak yang menggambarkan 4 orang yang berbeda karakter namun menjadi 1 dalam musik.

Kotak merupakan salah satu band yang mengusung aliran rock satu-satunya di ajang ini. Kotak terkenal lewat lagunya yaitu Terbang, Hilang, dan Saat kujauh.Sesungguhnya setelah ajang ini berakhir, Pare sang vokalis berniat mengundurkan diri dari manajemen Kotak dan memilih bertindak di belakang layar. Namun berhubung promosi album mereka belum kelar, Pare masih mengurungkan niat tersebut.Dan di penghujung tahun 2007, akhirnya Pare resmi sudah meninggalkan Kotak yang membesarkan namanya. Tak begitu lama setelah Pare keluar, Kotak langsung mendapatkan pengganti Pare. Dialah Tantri Syalindri Ichlasari atau yang lebih dikenal dengan sebutan Tantri, yang merupakan vokalis grup band "Ares" yang juga kerabat dekat dari Kotak.
Dari segi suara Tantri memang lebih bagus ketimbang Pare, karena ia mampu membawakan lagu beraliran rock dengan suara yang dahsyat dan mampu membawakan lagu pop dengan suara yang datar.
Tapi tak langsung saja Tantri bergabung dengan Kotak, karena ia masih bersekolah di bangku SMA kelas 2 dan masih ingin fokus ke sekolah. Vokalis baru album juga baru.

Tahun 2008, Kotak meluncurkan album kedua yang berisikan 12 track didalamnya. Mereka memang sudah dipersiapkan untuk kembali menggebrak musik Indonesia dengan warna musik yang beda. Idealis musik Rock mereka memang kental sekali di dalam album ini simak lagu yang sebagai single pertama di album ini Beraksi, dilanjutkan dengan Kosong Toejoeh gaharnya musik Rock memang sudah menjadikan identitas dari mereka namun ketika berpaling dengan track-track selanjutnya alunan kerasnya musik Rock dari Kotak berubah konstan dengan sedikit lembut. Jika single pertama bergenre rock abis, single kedua ini lebih slow.
Lagu andalannya adalah Beraksi dan Masih Cinta.
Tapi entah mengapa sebelum video klip lagu Beraksi dibuat, Ichez tiba-tiba memutuskan hengkang dan pindah ke The Rock Indonesia.
Padahal waktu itu The Rock memiliki seorang bassis yang bernama Swasti Sabdastantri "Chua". Namun alasannya, "kita cuma bertukar bassis aja" ungkap Ichez.

Dan kini perubahan banyak dialami Kotak.
Dengan formasi baru yaitu Tantri (vokal), Cella (gitar), Chua (bass), dan Posan (drum).
Semoga dengan ini Kotak tidak gonta-ganti personil lagi.
Nama asli personil Kotak:
Tantri Syalindri Ichlasari (vokal)
Mario Marcella Handika Putra (gitar)
Swasti Sabdastantri (bass)
Haposan Harianto Tobing (drum)

Sejarah J - Rocks

Iman adalah leader dari band ini jauh sebelum ada J-Rocks, dia pernah gabung bareng Funky Kopral (sekarang Funkop) di tahun 2001 sebagai gitaris additional tetap, dan saat di Funky Kopral Iman ketemu ama Sony yang kala itu ikutan audisi gitaris yang diadakan Funky Kopral dan ajak punya ajak Sony diajakin Iman buat bikin band aliran Jepangan, sebelumnya Iman telah bareng ma Wima yang emang mereka dah ngeband sedari SMA, dan gayung bersambut Sony pun mau gabung dengan bonus temennya Anton sebagai penggebuk drum set, karena nyari tukang nyanyi gak dapet-dapet maka ya udah lah Iman saja yang tukang nyanyi, maka jadilah sebuah band bernama J-Rockstar pada sekitaran tahun 2003.
Aksi J-Rockstar pun berlanjut dengan iseng-iseng ikotan kontes musik Nescafe, dan malah jadi juwaranya, Good Job Dude!!! gak cuman itu saja Aquarius Musikindo tertarik sama mereka dan mengontrak mereka tuk bikin album akhirnya band ini kemudian dikenal dengan nama J-Rocks saja, dan album pertama mereka “Topeng Sahabat” cukup sukses di pasaran dengan hit seperti “Lepaskan Diriku”, “Ceria”, dan “Berharap kau Kembali”. Aliran seperti mereka belum ada kala itu, berarti dengan kemunculan mereka lebih memperkaya khasanah musik Indonesia, wah jadi trendsetter neh.

Tentang album kedua J-Rocks “Spirit”
Album kedua mereka baru saja lansir bertajuk “Spirit”, makin menegaskan bahwa bandini gak cuman numpang lewat saja, simak saja lagu “Kau Curi Lagi”, lagu ini dimainkan duet bareng Prisa, seorang cewek pendatang baru yang sebentar lagi punya album sendiri, kemudian “Cobalah Kau Mengerti” yang cukup catchy dan easy Listening banget ngepop lagi, atau “Juwita Hati” nah kalau ini lebih ngagetin karena berirama Jazz Blues, tapi yang paling bikin ngeh” adalah lagu “Tersesal”, dalam lagu ini olahan vokalnya berat banget, naik turun dengan suara Falsetto panjang dengan vibrasi di ujung nada, khas lagu Jepang dan Iman sepertinya berhasil membawakannya dengan sangat bagus, dan yang paling unik musiknya beraransemen Rock Opera, dan kebayang kan rumitnya, sederet lagu tadi mengartikan bahwa band ini memang memiliki kemampuan yang lebar, baik dalam beraliran, skill musikalitas maupun komersialitas, well bagi kalian yang belon punya albumnya langsung saja beli gak bakal rugi deh, tapi ingat jangan yang bajakan!!!

Tentang musik Jepang
Iman adalah seorang pecandu Jepang yang parah, jauh sebelum J-Rocks lahir, atau sejak SMP dia sudah punya konsep ngeband aliran Jepang, dan gak cuman itu saja lagu-lagu di album 1 dan 2 J-Rocks ternyata ada yang sudah diciptakannya di bangku SMP, maksa banget neh bocah?
Menurut Iman musik Jepang tidak seperti apa yang orang pandang selama ini dia melihat musik Jepang adalah sesuatu yang sangat luas dimana banyak genre musik tercampur aduk di Jepang sono, dan hanya terpisahkan oleh soal bahasa saja selebihnya musik Jepang adalah sesuatu yang universal bukan yang itu-itu saja (macem Laruku, X-Japan, Ayumi ), makanya di album J-Rocks nuansanya gado-gado gak cuman sempit satu macem musik saja, bener juga lo Man.

Tentang musik J-Rocks kedepan
Pada album Spirit, lagu-lagunya lebih soft daripada yang pertama disamping mungkin market lebih mudah menerima yang beginian, Iman ngaku kalo itu semua karena “lagi pengen” saja dan mungkin buat album ke 3 kelak J-Rocks bisa saja kembali ngerock abis atau bahkan ganti musik ajeb-ajeb geleng-geleng,tapi yang pasti apapun itu kesemuanya harus berasal dari semangat bermusik yang jujur. Yah kita tunggu saja Fren!!!
Get Free Music at www.divine-music.info
Get Free Music at www.divine-music.info

Free Music at divine-music.info>
 
Free Website templatesMusiczik.netfreethemes4all.comLast NewsFree CMS TemplatesFree CSS TemplatesFree Soccer VideosFree Wordpress ThemesFree Blog templatesFree Web Templates