Back Jun 10845キューJAVA


Queueとは?


列に並ぶ

Queueの機能

  • 先進資料先出FIFO構造
  • キューの一端はfontであり、削除操作
  • のみが実行する.
  • の他端は接尾辞であり、挿入演算
  • のみが実行する.
  • グラフィック幅優先ナビゲーション(BFS)
  • を使用
    主に
  • コンピュータバッファに使用されます.
  • JavaではキューはLinkedListを利用する
    package baekjoon;
    
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.util.LinkedList;
    import java.util.Queue;
    import java.util.StringTokenizer;
    
    
    public class Queue_10845 {
    	public static void main(String args[]) throws IOException {
    		Queue<Integer> queue=new LinkedList<>();
    		BufferedReader bf=new BufferedReader(new InputStreamReader(System.in));
    		
    		int N=Integer.parseInt(bf.readLine());
    		int b=0;
    
    		for(int i=0;i<N;i++) {
    			StringTokenizer st=new StringTokenizer(bf.readLine());
    			String S=st.nextToken();
    			
    			switch(S){
    				case "push":
    					int num=Integer.parseInt(st.nextToken());
    					queue.add(num);
    					b=num;
    					break;
    				
    				case "pop":
    					if(queue.isEmpty()) {
    						System.out.println(-1);
    					} else {
    						System.out.println(queue.poll());
    					}
    					break;
    					
    				case "size":
    					System.out.println(queue.size());
    					break;
    					
    				case "empty":
    					if(queue.isEmpty()){
    						System.out.println(1);
    					}
    					else {
    						System.out.println(0);
    					}
    					break;
    					
    				case "front":
    					if(queue.isEmpty()) {
    						System.out.println(-1);
    					} else {
    						System.out.println(queue.peek());
    					}
    					
    					break;
    					
    				case "back":
    					if(queue.isEmpty()) {
    						System.out.println(-1);
    					} else {
    						System.out.println(b);
    					}
    					break;
    			}
    		}
    		
    	}
    }
    
    注意:https://coding-factory.tistory.com/602