「誰かがレコードを初めて入力した/リンクされたリストの最後のレコードを削除した(c実装で)/...」のような、チェックする必要がある小さな面倒なケースをどのように呼びますか?
私が知っている唯一の用語は、「最終的なケース」にあまりうまく翻訳されていません。より良い名前はありますか?
「誰かがレコードを初めて入力した/リンクされたリストの最後のレコードを削除した(c実装で)/...」のような、チェックする必要がある小さな面倒なケースをどのように呼びますか?
私が知っている唯一の用語は、「最終的なケース」にあまりうまく翻訳されていません。より良い名前はありますか?
エッジケース。
コーナーケース
私が今まで持っていた教授は、それらを境界ケースまたは特別なケースと呼んでいました。
特殊なケースという用語を使用します
私はそれを仕事と呼んでいます;-)。
彼らは私にそれを支払うからです。
しかし、(前述のように) エッジ ケースは、おそらくより正しい名前です。
私は彼らを「ニグリ」と呼んでいます。しかし、正直なところ、リンクされたリストはもう気にしません。
メモリは安価なので、空のリストに first と last の 2 つの特別なノードが含まれるように、常にリストを実装します。
検索するときは、first->next から last->prev まで包括的に繰り返します (したがって、センチネルの最初/最後のノードは見ていません)。
挿入するときは、この同じ制限を使用して挿入ポイントを見つけます。これにより、最初または最後の前に挿入しないことが保証されるため、「中間に挿入」のケースのみを使用する必要があります。
削除する場合も同様です。最初または最後のノードを削除することはできないため、削除コードは "insert-in-the-middle" ケースのみを使用する必要があります。
確かに、それは私が怠けているだけです。それに加えて、私はとにかく C の作業をあまりしなくなりました。また、利用できる巨大なコード ライブラリがあるので、新しい連結リストを実装する日々はとうの昔に過ぎ去っています。