알고리즘 공부

[java] stack(스택)

2sangmin 2022. 3. 4.

stack은 LIFO(Last in First Out) 후입선출구조!!

 

[Java] 코드

package test;

 

public class Stack 

{

        private int[] arr;

        private int top = 0;

        private int size = 2;

        public Stack()

        {

               arr = new int[size];

        }

 

public void push(int data)

{

        if(top==arr.length)

        {

                System.out.println("사이즈 초과 !! +3 확장 하겠습니다.");

                int new_arr[] = new int[size+3];

        for(int i=0;i<top;i++)

        {

                new_arr[i]=arr[i];

        }

        arr=new_arr;

        }

        arr[top]=data;

        top++;

}

 

public void pop()

{

        if(top==0)

{

        System.out.println("지울 데이터가 없습니다.");

}

        else

        {

                arr[top]=0;

               top--;

        }

}

 

public void print()

{

        System.out.print("현재 상태 : ");

        for(int i=0;i<top;i++)

        {

                System.out.print(arr[i]+" ");

        }

        System.out.println();

}

}

 

메인부분

실행화면

 

댓글