ここで、挿入プロセス中に線形プローブを使用したときに、ハッシュ テーブルから値を削除するコストを尋ねられたという質問があります。
インターネットでさまざまなことを読んでわかったことは、負荷率をどうにかしなければならないということです。よくわかりませんが、負荷率と必要なプローブ本数の関係を読んだところ、プローブ本数=1/(1-LF)でした。
したがって、コストはプローブ配列に依存する必要があると思います。しかし、別の考えがすべてを台無しにします。
エレメントが p プローブに挿入されていて、このエレメントを削除しようとしている場合はどうでしょうか。しかし、この前に、同じハッシュ コードを持ついくつかの要素を既に削除しており、p 未満のプローブへの挿入の一部でした。
この場合、ハッシュ テーブルに空のスロットが表示される段階に到達しますが、削除しようとしている要素が既に削除されているのか、プローブの結果として別の場所にあるのかはわかりません。
また、要素を削除したら、このスロットを特別なインジケーターでマークして、それが利用可能であることを通知する必要があることもわかりましたが、これでは、削除しようとしている要素が不明であるという問題は解決しません。
そのような場合のコストを見つける方法を誰か提案してもらえますか? 非線形プロービングの場合、アプローチは変化しますか?