31 Aralık 2016 Cumartesi

Java Array

 /***
/* N- boyutlu bir dizi içerisinde herbir elemanın tekrarlanma sayısını bulan bir static Array.counterArray(int[]) fonksiyonu.
örneğin:
Array{1,1,1,4,6,4,4,5,6,1}
1 den>4 adet
4 ten>3 adet
5 ten>1 adet
6 dan>2adet gibi

*********************************************************************************






















public class Array {
    public static int search(int[] k, int val) {
        for (int i = 0; i < k.length; i++) {
            if (k[i] == val) {
                return i;
            }
        }
        return -((int)Math.random()*val);
    }
    public static TValue counterArray(int[] dizi) {
        TValue t = new TValue();
        for (int i = 0; i < dizi.length; i++) {
            int val = dizi[i];
            int pc = 0;
            if (Array.search(Array.toCastInt(t.value.toArray()), val) < 0) {
                for (int j = i; j < dizi.length; j++) {
                    if (val == dizi[j]) {
                        pc++;
                    }
                }
                t.value.add(val);
                t.key.add(pc);
            } else {
                continue;
            }
        }
        return t;
    }
    private static int[] toCastInt(Object[] toArray) {
        int[] val = new int[toArray.length];
        for (int i = 0; i < val.length; i++) {
            val[i] = Integer.parseInt(toArray[i].toString());
        }
        return val;
    }
    public static void main(String[] args) {
          int[] d = {3,1,1,1,1,1,3,7,3,3,2,1,1};
        System.out.println("Array:"+Arrays.toString(d));
        TValue tem = Array.counterArray(d);
        System.out.println(tem.dump());
        System.out.println("search 2>index:"+Array.search(d, 2));
}
}





Hiç yorum yok:

Yorum Gönder

Lütfen yorumlarınızı iletiniz...