つまり、C コードでクイックソート アルゴリズムの実装を渡されたクラスがあり、そのコードを mips アセンブリ言語で実装する必要があります。ほとんどのコードを正常に作成できましたが、再帰の一部に問題があります。これは私が心配しているCプログラムの一部です:
...
tmp = v[left];
v[left] = v[last];
v[last] = tmp;
qsort(v, left, last-1);
qsort(v, last+1, right);
私が問題を抱えている部分は、再帰的な部分です。qsort(v, left, last-1)...
私の質問は、 qsort(v, left, last-1) が実行されると、値 last-1 が「右」として保存されるということです。したがって、その再帰呼び出しが完了すると、「right」の以前の値を思い出す必要があります。どうすれば簡単にできますか?
編集:問題は、数値のリストが大きくなればなるほど、再帰呼び出しが増えるため、より多くの値を保存する必要があることです。私が知りたいのは、可変長の値を保存して呼び出す方法があるかどうかです。