これは私には少し混乱します。制約が次の場合、特定の問題を解決するための私のアプローチはどうあるべきですか。
1)余分なスペースを使用しない:例:特定の配列を並べ替える場合、いくつかの方法があります。スワップを続けるバブルソート(ループのみ、再帰なし)。余計なスペースを使わないということだと思います。再帰を使用して要素を並べ替えるとどうなりますか。「余分なスペースを使用しない」と同じですか、それとも使用されたスタックがアルゴリズムのスペースの複雑さでカウントされますか?
2)O(1)スペースの場合:O(1)スペースの意味は何ですか?それは一定のスペースを意味しますか?一定のスペースの場合は、次の場合についてコメントしてください。
a)3番目の変数を使用してバブルソートでスワップしている場合。それは余分なスペースではなく、入力のサイズに依存しないため、一定のスペースにあります。
b)さらに、自然数に適用されるカウントソートを使用している場合、実際には総数に比例するスペースの量を必要としないので、定数スペースO(1)にあると見なしますか?
違いがあれば説明してください。ありがとう