Queueクラス(先入れ先出し)を定義し、Enqueue,Dequeue,Peekメソッドを使用し要素を追加したり、削除したりしてみる。
using System;
using System.Collections.Generic;
class MainClass
{
static void Main()
{
// Queue(先入れ先出し)を作成
var q = new Queue<int>();
// 要素を追加
int i = 1;
while (i < 6)
{
q.Enqueue(i++);
}
// qを出力
// 出力値:1 2 3 4 5
foreach (int n in q)
{
Console.Write(n + " ");
}
// 改行
Console.WriteLine("");
// 先頭の要素を取得、出力して削除
// 出力値:1 2
Console.Write(q.Dequeue());
Console.Write(" ");
Console.WriteLine(q.Dequeue());
// 削除されていることを確認
// 出力値:3 4 5
foreach (var n in q)
{
Console.Write(n + " ");
}
Console.WriteLine("");
// 先頭の要素を取得して出力
// 出力値:3
Console.WriteLine(q.Peek());
// 削除されていないことを確認
// 出力値:3 4 5
foreach (var n in q)
{
Console.Write(n + " ");
}
Console.WriteLine("");
// 最初の状態に戻す
// すべて削除
q.Clear();
i = 1;
while (i < 6)
{
q.Enqueue(i++);
}
// 出力値:1 2 3 4 5
foreach (var n in q)
{
Console.Write(n + " ");
}
Console.WriteLine("");
}
}
0 コメント:
コメントを投稿