Show the steps of Columnsort for the input array with 9 rows

Show the steps of Columnsort for the input array with 9 rows and 3 columns 23 15 9 26 11 3 2 18 7 22 5 14 17 20 25 24 10 1 8 13 21 27 12 4 19 16 6

Solution

Steps of Column-sort of an array:

1) Read the elements and store in 2-D array (arr[ ][ ])

2) Create a new 1-D array (newArr[ ])

3) Copy the 2-D array into 1-D array column wise

4) Apply any sorting algorithm to 1-D array

5) Copy or push back the sorted 1-D array into 2-D array column wise

6) Repeat the step 2 for each column of an 2-D array

7) Print the resulted 2-D array

Solution in JAVA:

package com.cg.cangg.columnsort;

import java.util.Arrays;

public class ColumnSort {

   public static int arr[][] = new int[9][3];

   public static void readArray() {
       arr[0][0] = 23;
       arr[0][1] = 15;
       arr[0][2] = 9;
       arr[1][0] = 26;
       arr[1][1] = 11;
       arr[1][2] = 3;
       arr[2][0] = 2;
       arr[2][1] = 18;
       arr[2][2] = 7;
       arr[3][0] = 22;
       arr[3][1] = 5;
       arr[3][2] = 14;

       arr[4][0] = 17;
       arr[4][1] = 20;
       arr[4][2] = 25;
       arr[5][0] = 24;
       arr[5][1] = 10;
       arr[5][2] = 1;
       arr[6][0] = 8;
       arr[6][1] = 13;
       arr[6][2] = 21;
       arr[7][0] = 27;
       arr[7][1] = 12;
       arr[7][2] = 4;

       arr[8][0] = 19;
       arr[8][1] = 16;
       arr[8][2] = 6;

   }

   public static void columnSort(int arr[][]) {
       for (int col = 0; col < arr[0].length; col++) {
           // Pull the column out.
           int[] thisCol = new int[arr.length];
           for (int i = 0; i < arr.length; i++) {
               thisCol[i] = arr[i][col];
           }
           // Sort it.
           Arrays.sort(thisCol); // predefined sort method in JAVA from util package
           // Push it back in.
           for (int i = 0; i < arr.length; i++) {
               arr[i][col] = thisCol[i];
           }
       }
   }

   public static void main(String[] args) {
       // TODO Auto-generated method stub

       readArray(); // Reading the array elements

       System.out.println(\"Before sorting: \");
       for (int i = 0; i < 9; i++) {
           for (int j = 0; j < 3; j++) {
               System.out.print(\" \" + arr[i][j]);
           }
           System.out.println();
       }

       columnSort(arr); // calling columnSort method

       System.out.println(\"After sorting: \");
       for (int i = 0; i < 9; i++) {
           for (int j = 0; j < 3; j++) {
               System.out.print(\" \" + arr[i][j]);
           }
           System.out.println();
       }
   }
}

 Show the steps of Columnsort for the input array with 9 rows and 3 columns 23 15 9 26 11 3 2 18 7 22 5 14 17 20 25 24 10 1 8 13 21 27 12 4 19 16 6SolutionSteps
 Show the steps of Columnsort for the input array with 9 rows and 3 columns 23 15 9 26 11 3 2 18 7 22 5 14 17 20 25 24 10 1 8 13 21 27 12 4 19 16 6SolutionSteps

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site