キュー:
public class Queue
{
public Queue() { }
public process Front() { return this.q_list.ElementAt(0); }
public int Size { get { return this.q_list.Count; } }
public bool IsEmpty { get { return this.q_list.Count <= 0 ? true : false; } }
public void Enqueue(process proc) { this.q_list.Add(proc); }
public void Dequeue() { this.q_list.RemoveAt(0); }
public List<process> q_list = new List<process>();
};
リストの作成:
List<Queue> rr_list = new List<Queue>();
プロセス構造:
public class process
{
public int Proc_a;
public int Proc_b;
public int Proc_Index;
};
Proc_Index の値に応じて、リストの特定の場所にプロセスを追加したいとします。どうやってやるの?また、リストが最初は空であると仮定しましょう。
process proc = new process{
Proc_a = 1,
Proc_b = 2,
Proc_Index = 4 };
インデックス 4 にあるリストにあるキューにそれを追加したいと思います。
これは可能ですか?
私はもう試した:
rr_list[proc.Proc_Index].Enqueue(proc);
しかし、インデックスが見つからないなどの問題があると書かれています。
私ができる唯一のことは、最大 20 個のインデックス用の空のキューを追加してリストを初期化することですが、より良い方法があるかどうかはわかりません。