스택(Stack) : 대표적 자료구조로, 후입선출 (LIFO) 형태

큐(Queue) : 선입선출(FIFO) 형태, 스택의 먼저 들어온 데이터의 기다림을 해결하기 위해 나온 방식

 

1. 스택    2. 큐

1. push    2. pop

으로 사용자에게 자료구조 선택과 데이터 push와 pop을 선택받아 데이터 입력과 출력 보여줌

 

 

메모리 클래스를 스택과 큐에서 상속받아 사용 

 

메인 클래스 Mymain.class

import java.util.Scanner;

public class Mymain {

    public static void main(String[] args) {

        Scanner sc =new Scanner(System.in);

        Memory mem;                            //객체 생성

        MyStack ms = new MyStack();            //스택으로 객체 생성

        MyQueue mq = new MyQueue();            //큐로 객체 생성

        int index = 0, index1=0;

 

        while (true) {                        //반복

            System.out.println("1.stack 2.queue");

            index = sc.nextInt();            

            

            if(index == 1) {                //스택 사용 시 객체 스택으로 동적바인딩0

                mem = ms;

            }else if(index == 2) mem = mq;                    //큐 사용시 큐로 동적바인딩

            else break;

            

            while(true) {

                System.out.println("1.push   2.pop");

                index1 = sc.nextInt();

              

                if(index1 == 1) {                //푸쉬

                    mem.push(sc.nextInt());        //입력값 넘김

                }else if(index1 == 2) {            //팝

                    System.out.println(mem.pop());

                }else break;

            }

        }

    }

}

Colored by Color Scripter

 

 

'JAVA' 카테고리의 다른 글

인터페이스_2  (0) 2019.06.18
인터페이스_1  (0) 2019.06.18
추상화 예제  (0) 2019.06.18
상속 예제_extends, super, Override  (0) 2019.06.18
배열 예제_Has-A  (0) 2019.06.18

+ Recent posts