def enqueue(elem: T): Unit = {
A(rear) = elem
rear += 1
size += 1
if (size == 0) {
front = 0
rear = 0
}
if (size == A.length) {
grow()
}
}
配列を使用してキューを実装していますが、エンキューメソッドに問題がありますが、間違いが正確にどこにあるのかわかりません。だから、私が間違いを犯した箇所についていくつかのヒントを教えてください。 上記のコードでは、sizeは配列キュー内の要素の数です。growは、配列が一杯になったときに配列を倍にする関数です。前もって感謝します。Scalaの配列を使用したキュー実装のエンキューメソッド
+1不変量と契約の場合は、CS 101からのアドバイスがあります。 –