Advertisement
Vankata17

Dividing array to even and odd(bublle and insertion sort)

Nov 29th, 2020
616
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.39 KB | None | 0 0
  1. package com.company;
  2.  
  3. import java.util.Arrays;
  4. import java.util.Scanner;
  5.  
  6. public class BublleAndInsertionSort {
  7.     public static void main(String[] args) {
  8.         Scanner scan = new Scanner(System.in);
  9.         int n = Integer.parseInt(scan.nextLine());
  10.         int[] arr1 = new int[n];
  11.  
  12.         int evenIndex = 0;
  13.         int oddIndex = 0;
  14.         int evenCount = 0;
  15.         int oddCount = 0;
  16.         for (int i = 0; i < n; i++) {
  17.             System.out.printf("Please insert the [%d] element of array :", i);
  18.             arr1[i] = Integer.parseInt(scan.nextLine());
  19.  
  20.             if (arr1[i] % 2 == 0) {
  21.  
  22.                 evenCount++;
  23.             } else {
  24.  
  25.                 oddCount++;
  26.             }
  27.         }
  28.         int[] oddArr = new int[oddCount];
  29.         int[] evenArr = new int[evenCount];
  30.  
  31.         for (int i = 0; i < n; i++) {
  32.             if (arr1[i] % 2 == 0) {
  33.                 evenArr[evenIndex] = arr1[i];
  34.                 evenIndex++;
  35.             } else {
  36.                 oddArr[oddIndex] = arr1[i];
  37.                 oddIndex++;
  38.             }
  39.         }
  40.  
  41.         System.out.println("BEFORE SORTING OF EVEN ARRAY :");
  42.         System.out.println(Arrays.toString(evenArr));
  43.         System.out.println("BEFORE SORTING OF ODD ARRAY :");
  44.         System.out.println(Arrays.toString(oddArr));
  45.         bublleSort(evenArr);
  46.         insertionSort(oddArr);
  47.         System.out.println("AFTER SORTING OF EVEN ARRAY :");
  48.         System.out.println(Arrays.toString(evenArr));
  49.         System.out.println("AFTER SORTING OF ODD ARRAY :");
  50.         System.out.println(Arrays.toString(oddArr));
  51.     }
  52.  
  53.  
  54.     private static void bublleSort(int[] evenArr) {
  55.         int free;
  56.         for (int i = 0; i < evenArr.length - 1; i++) {
  57.             for (int j = 0; j < evenArr.length - 1 - i; j++) {
  58.                 if (evenArr[j] > evenArr[j + 1]) {
  59.                     free = evenArr[j];
  60.                     evenArr[j] = evenArr[j + 1];
  61.                     evenArr[j + 1] = free;
  62.                 }
  63.             }
  64.         }
  65.     }
  66.  
  67.     private static void insertionSort(int[] oddArr) {
  68.         int n = oddArr.length;
  69.         for (int j = 1; j < n; j++) {
  70.             int key = oddArr[j];
  71.             int i = j - 1;
  72.             while ((i > -1) && (oddArr[i] > key)) {
  73.                 oddArr[i + 1] = oddArr[i];
  74.                 i--;
  75.             }
  76.             oddArr[i + 1] = key;
  77.         }
  78.     }
  79. }
  80.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement