提案。Stack のサイズ変更配列の実装では、空のデータ構造から始まる一連の操作に対する配列アクセスの平均回数は、最悪の場合でも一定です。
証明スケッチ: 配列を大きくする (サイズ N からサイズ 2N に) 原因となる各 push() について、N/2 - 1
最後にスタック サイズを k に成長させた push() 操作を考えますN/2 + 2 to N
。4N 配列アクセスを平均して N/2 配列アクセス (プッシュごとに 1 つ) で配列を成長させると、操作ごとに 9 配列アクセスの平均コストが得られます。M 操作の任意のシーケンスで使用される配列アクセスの数が M に比例することを証明することは、より複雑です。(アルゴリズム第 4 版第 1.4 章)
証明スケッチを完全に理解していませんでした。これを理解するのを手伝ってください。