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"

コードを実行してみませんか?

この問題のコードエディタと実行機能を使用するには、ログインしてください。

アカウントをお持ちでない方

新規登録