Spiral Matrix

 import java.util.*;


class spiral{

    public static void printspiral(int matrix[][]){


        int startRow=0,startCol=0,endCol=matrix[0].length-1,endRow=matrix.length-1;

        while(startRow<=endRow&&startCol<=endCol){
            // top
            for(int i=startCol;i<=endCol;i++){

                System.out.print(matrix[startRow][i]+" ");
            }

            //right
            for(int j=startRow+1;j<=endRow;j++){

                System.out.print(matrix[j][endCol]+" ");
            }

            //bottom
            for(int i=endCol-1;i>=startCol;i--){

                if(startRow==endRow){
                    break;
                }

                System.out.print(matrix[endRow][i]+" ");
            }

            //left
            for(int j=endRow-1;j>=startRow+1;j--){
                if(startCol==endCol){
                    break;
                }
                System.out.print(matrix[j][startCol]+" ");
            }

            startCol++;
            startRow++;
            endCol--;
            endRow--;


        }
       
    }


    public static void main(String[] args) {

        Scanner s=new Scanner(System.in);

        int matrix[][]={{1, 2, 3,},
                        {4, 5, 6},
                        {7, 8, 9}};

   
       
   

        // System.out.println("Enter the Matrix");

        // for(int i=0;i<matrix.length;i++){
        //     for(int j=0;j<matrix[0].length;j++){

        //         matrix[i][j]=s.nextInt();

        //     }
        // }

        printspiral(matrix);


    }
}

Comments

Popular posts from this blog

Convert first letter to capital letter in java

Stair case traversal search

Time conversion into IST