020-004-008
ArrayDequeでスタックとキューを切り替える
中級
問題説明
ArrayDequeでスタックとキューを切り替える
この問題では: カンマ区切りの要素文字列を受け取り、ArrayDequeを使ってスタック(LIFO)またはキュー(FIFO)の順序で要素を並べ替えて返すメソッドを作成します。
学習目標: Dequeをスタック(LIFO)とキュー(FIFO)の両方として使う方法を理解する
概要
ArrayDeque を使い、同じデータに対してスタック操作とキュー操作の違いを確認するプログラムを作成してください。
仕様
stackOrder(String elements) メソッド
- カンマ区切りの要素文字列を受け取る(例:
"A,B,C") - 各要素を
push()でArrayDequeに追加し、pop()で全要素を取り出す - 改行区切りで結合した文字列を返す(LIFO順)
queueOrder(String elements) メソッド
- カンマ区切りの要素文字列を受け取る(例:
"A,B,C") - 各要素を
add()でArrayDequeに追加し、poll()で全要素を取り出す - 改行区切りで結合した文字列を返す(FIFO順)
入出力例
stackOrder("A,B,C") → "C\nB\nA"
queueOrder("A,B,C") → "A\nB\nC"
