logo

Java'da Seçim Sıralaması

Seçim sıralamasını kullanarak dizi elemanlarını sıralamak için bir Java programı oluşturabiliriz. Seçimli sıralama algoritmasında en alttaki elemanı arar ve onu uygun konuma düzenleriz. Geçerli öğeyi bir sonraki en düşük sayıyla değiştiririz.

seçim sıralaması

Seçim sıralaması nasıl çalışır?

Seçim sıralama algoritması çok basit bir şekilde çalışır. Verilen dizi için iki alt diziyi korur.

javascript öğreticisi
  • Alt dizi zaten sıralanmıştır.
  • Ve ikinci alt dizi sıralanmamıştır.

Seçim sıralamasının her yinelemesinde, sıralanmamış alt diziden bir öğe seçilir ve sıralanmış alt diziye taşınır.

Java yineleme haritası
 arr[] = 25 35 45 12 65 10 // Find the minimum element in arr[0...5] and place it at beginning. 10 25 35 45 12 65 // Find the minimum element in arr[1...5] and place it at beginning of arr[1...5] 10 12 25 35 45 65 // Find the minimum element in arr[2...5] and place it at beginning of arr[2...5] No, you can see that the array is already sorted. 10 12 25 35 45 65 

Zaman Karmaşıklığı

En iyi: ?(n^2)
Ortalama: ?(n^2)
En kötüsü: Ç(n^2)

Uzay Karmaşıklığı

Ç(1)

Seçim Sıralama Java Örneği

 public class SelectionSortExample { public static void selectionSort(int[] arr){ for (int i = 0; i <arr.length - 1; i++) { int index="i;" for (int j="i" + < arr.length; j++){ if (arr[j] arr[index]){ lowest } smallernumber="arr[index];" arr[index]="arr[i];" arr[i]="smallerNumber;" public static void main(string a[]){ int[] arr1="{9,14,3,2,43,11,58,22};" system.out.println('before selection sort'); for(int i:arr1){ system.out.print(i+' '); system.out.println(); selectionsort(arr1); sorting array using sort system.out.println('after pre> <p>Output:</p> <pre> Before Selection Sort 9 14 3 2 43 11 58 22 After Selection Sort 2 3 9 11 14 22 43 58 </pre> <h2>Selection Sort in Java (Another way)</h2> <p>You can also use a method where array is not predefined. Here, user has to put the elements as input.</p> <p>In the following Java program, we ask user to enter the array elements or number, now compare the array&apos;s element and start swapping with the variable temp. Put the first element in the temp and the second element in the first, and then temp in the second number and continue for the next match to sort the whole array in ascending order.</p> <pre> import java.util.Scanner; public class SelectionSortExample2 { public static void main(String args[]) { int size, i, j, temp; int arr[] = new int[50]; Scanner scan = new Scanner(System.in); System.out.print(&apos;Enter Array Size : &apos;); size = scan.nextInt(); System.out.print(&apos;Enter Array Elements : &apos;); for(i=0; i<size; i++) { arr[i]="scan.nextInt();" } system.out.print('sorting array using selection sort technique..
'); for(i="0;" i<size; for(j="i+1;" j arr[j]) temp="arr[i];" arr[j]="temp;" system.out.print('now the after sorting is :
'); system.out.print(arr[i]+ ' '); < pre> <p>Output:</p> <strong> Use image SelectionSort</strong> </size;></pre></arr.length>

Java'da Seçim Sıralaması (Başka bir yol)

Dizinin önceden tanımlanmadığı bir yöntemi de kullanabilirsiniz. Burada kullanıcının elemanları girdi olarak koyması gerekir.

Aşağıdaki Java programında, kullanıcıdan dizi elemanlarını veya sayısını girmesini istiyoruz, şimdi dizinin elemanlarını karşılaştırıyoruz ve temp değişkeniyle değiştirmeye başlıyoruz. İlk öğeyi temp'e ve ikinci öğeyi birinciye, ardından temp'i ikinci sayıya yerleştirin ve tüm diziyi artan düzende sıralamak için bir sonraki eşleşmeye devam edin.

 import java.util.Scanner; public class SelectionSortExample2 { public static void main(String args[]) { int size, i, j, temp; int arr[] = new int[50]; Scanner scan = new Scanner(System.in); System.out.print(&apos;Enter Array Size : &apos;); size = scan.nextInt(); System.out.print(&apos;Enter Array Elements : &apos;); for(i=0; i<size; i++) { arr[i]="scan.nextInt();" } system.out.print(\'sorting array using selection sort technique..
\'); for(i="0;" i<size; for(j="i+1;" j arr[j]) temp="arr[i];" arr[j]="temp;" system.out.print(\'now the after sorting is :
\'); system.out.print(arr[i]+ \' \'); < pre> <p>Output:</p> <strong> Use image SelectionSort</strong> </size;>