0

私たちの多くは、mergesort の merge サブルーチンについて知っています。ここで、Pythonで:

def merge(left, right):
    result = []
    i ,j = 0, 0
    while i < len(left) and j < len(right):
        if left[i] <= right[j]:
            result.append(left[i])
            i += 1
        else:
            result.append(right[j])
            j += 1

追加の配列なしresultで (この場合はなしで) マージを記述できる方法はありますか? 文字列 $s = xy = (y^Rx^R)^R$ (R は逆を意味する) が役に立たないという事実を利用しようとしました。

このインプレース バージョンのマージでは、2 つの入力サブ配列が隣接していると想定されます。(3 つの入力インデックス i、j、k の場合、最初の配列は [i, j) から、2 番目の配列は [j, k) から取得できます。)

ところで、私は C++ や Java などの Python 以外の言語を使用することにオープンです。

4

0 に答える 0