2011-12-20 3 views
0

キューと以下のようなさまざまな操作を実装しました。 Javaでキュー(循環キュー)を実装する他の簡単な方法はありますか? Javaでキューを実装する最も簡単な方法は何ですか?Javaのキューインプリメンテーション

import java.io.*; 
import java.util.*; 

public class QueueImplement { 

    LinkedList<Integer> list; 
    String str; 
    int num; 

    public static void main(String[] args) { 
     QueueImplement q = new QueueImplement(); 
    } 

    public QueueImplement() { 
     try { 
      list = new LinkedList<Integer>(); 
      InputStreamReader ir = new InputStreamReader(System.in); 
      BufferedReader bf = new BufferedReader(ir); 
      System.out.println("Enter number of elements : "); 
      str = bf.readLine(); 
      if ((num = Integer.parseInt(str)) == 0) { 
       System.out.println("You have entered either zero/null."); 
       System.exit(0); 
      } else { 
       System.out.println("Enter elements : "); 
       for (int i = 0; i < num; i++) { 
        str = bf.readLine(); 
        int n = Integer.parseInt(str); 
        list.add(n); 
       } 
      } 
      System.out.println("First element :" + list.removeFirst()); 
      System.out.println("Last element :" + list.removeLast()); 
      System.out.println("Rest elements in the list :"); 
      while (!list.isEmpty()) { 
       System.out.print(list.remove() + "\t"); 
      } 
     } catch (IOException e) { 
      System.out.println(e.getMessage() + " is not a legal entry."); 
      System.exit(0); 
     } 
    } 
} 
+1

だから.....気にしない。 –

+0

それはあなたのために働くのですか?このキューの要件は何ですか? – Paul

+2

あなたのコードに関連する*具体的な質問がありますか?スタックオーバーフローは[コードレビュー](http://codereview.stackexchange.com/)ではありません。 –

答えて

0

ArrayDequeおよびArrayBlockingQueueは、円形配列アルゴリズムを使用して実装されます。

1

リンクされたリストは良い方法です。しかし、あなたのコードを見て、私はそれが主な機能に属していることをお勧めします。コンストラクタでリンクリストを使用してキューのような機能を実行しましたが、キューを作成するには、キューのインタフェースと実装を提供するクラスを作成することをお勧めします。

関連する問題