자바 자료구조 Stack, Queue, deque

오세훈·2023년 7월 24일
0

java

목록 보기
4/16

Stack

Stack<String> st1 = new Stack<>();
        st1.push("A");
        st1.push("B");
        st1.push("C");
        st1.push("D");
        System.out.println(st1);
        
        // D 빼기
        st1.pop();
        System.out.println(st1);
        
        // C 빼기
        st1.pop();
        System.out.println(st1);

Queue

public static void main(String[] args) {
        Queue<String> que = new LinkedList<>();
        
        // que에 데이터 입력
        que.offer("0");
        que.offer("1");
        que.offer("2");
        que.offer("4");
//        que.add("8");
        System.out.println(que);
        
        // que에 데이터 추출
        que.poll();
        System.out.println(que);
    }

deque

public static void main(String[] args) {
        Deque<String> deq1 = new ArrayDeque<>();
        Deque<String> deq2 = new LinkedBlockingDeque<>();
        Deque<String> deq3 = new ConcurrentLinkedDeque<>();
        Deque<String> deq4 = new LinkedList<>();
        
        // 요소 추가
        deq1.addFirst("1");
        deq1.addLast("8");
        deq1.push("2");
        deq1.offer("4");
        deq1.add("12");
        deq1.offerFirst("7");
        deq1.offerLast("9");
        System.out.println(deq1);
        
        //값 접근
        System.out.println(deq1.peek());
        System.out.println(deq1.peekFirst());
        System.out.println(deq1.peekLast());
        System.out.println(deq1.getFirst());
        System.out.println(deq1.getLast());
        
        // 요소 삭제
        deq1.pop();
        System.out.println(deq1);
        deq1.remove();
        System.out.println(deq1);
        deq1.removeLast();
        System.out.println(deq1);
        deq1.removeFirst();
        System.out.println(deq1);
        deq1.poll();
        System.out.println(deq1);
        deq1.pollFirst();
        System.out.println(deq1);
        deq1.pollLast();
        System.out.println(deq1);

    }
profile
자바 풀 스택 주니어 개발자

0개의 댓글