Sıralı İki Diziyi Sıralı Birleştirme(merge) (Programlamaya Giriş)
26.03.2010 - 15:07 tarihinde vefa gönderdi
Program sıralı iki diziyi üçüncü bir dizide sıralı olarak birleştirir (merge).
Örnek ekran çıktısı:
-1 3 4 5 6 7 9 12 15 16 20 23 26 27 30 34 37 39 41 45
Kaynak kod:
class Merge { public static void main (String args[]) throws Exception { int a[] = {-1, 4, 6, 7, 12, 15, 16, 26, 27, 34}; int b[] = {3, 5, 9, 20, 23, 30, 37, 39, 41, 45}; int c[] = new int[20]; int i, sizeab, sizec, pa, pb, pc; sizeab = 10; sizec = 20; pa = 0; pb = 0; pc = 0; while (pc != sizec) if (a[pa] < b[pb]) { c[pc] = a[pa]; pa = pa + 1; pc = pc + 1; if (pa == sizeab) for (i = pb; i < sizeab; i = i + 1) { c[pc] = b[i]; pc = pc + 1; } } else { c[pc] = b[pb]; pc = pc + 1; pb = pb + 1; if (pb == sizeab) for (i = pa; i < sizeab; i = i + 1) { c[pc] = a[i]; pc = pc + 1; } } for (i = 0; i < sizec; i = i + 1) System.out.print(c[i] + " "); } }
Etiketler:
