Doç. Dr. GÜRAY SONUGÜR

Doç. Dr. Güray SONUGÜR – Öğrenci Bilgi Paylaşım Platformu

Dizi Sıralama ve Dizi İçinde Örüntü Bulma

  • Dizi yine ayrı bir metot içerisinde random değerlerden oluşturuluyor. Bu dizinin boyutu da yine klavyeden giriliyor. 
  • Aynı metot içinde dizi küçükten büyüğe sıralanıyor. Sıralama işlemi için “java.utils.Arrays” kütüphanesi kullanılıyor.
  • Dizinin ilk durumu ve sıralandıktan sonraki durumu ekrana yazdırılıyor. 
  • Örüntü bulma işlemi için; “oruntu” dizisi program içinden giriliyor.
  • oruntu dizisi içinde ardışık gelen iki elemanın dizi içindeki index numaralarını bulmak için “oruntuBulYaz” metotu kullanılıyor.

 

import java.util.Random;
import java.util.Arrays;
import java.util.Scanner;
public class DiziSirala_ders1 {
public static void main(String[] args) {
int[] oruntu= {11,41,61,45,23,79,38,19,10,114};

// oruntu dizisi içerisinde 19,10 integer sayılarının arka arkaya geldiği index numaraları bulunacak.
oruntuBulYaz(oruntu, 19, 10);
Scanner sc = new Scanner(System.in);
System.out.println(“Dizinin boyutunu giriniz: “);
int boyut= sc.nextInt();

System.out.println(“”);
int sonDizi[]= diziOlusturSirala(boyut);
for (int i = 0; i < boyut; i++) {
System.out.print(sonDizi[i]+ ” “);
}

}
private static int[] diziOlusturSirala(int boyut)
{
Random rnd = new Random();
int[] ilkDizi = new int[boyut];

for (int i = 0; i < boyut; i++) {
ilkDizi[i]= rnd.nextInt(10);
System.out.print(ilkDizi[i]+ ” “);
}
System.out.println(“”);
Arrays.sort(ilkDizi);
return ilkDizi;

}

private static void oruntuBulYaz(int[] list, int hedef1, int hedef2)
{
boolean bulunduMu=false;

for (int i = 0; i < list.length; i++) {
for(int j = i+1; j<list.length; j++){
if(list[i]==hedef1 && list[j]==hedef2)
{
bulunduMu=true;
System.out.println(“Bulunan hedef indisleri: ” +i
+ ” ” + j + ” sayılar: ” + hedef1 + ” ” + hedef2);
}
}

}
if (bulunduMu==false) System.out.println(“Örüntü bulunamadı!”);
}

}