シェルソートの順位性
このカテゴリーのNo.137(#35189)の続きなのですが、シェルソートについてご存知の方お願いします。
上記の質問にて、ヒープソートは完全二分割木型で、同一の値であってもその順序は保証されない、ということがわかりました。
そこで、配列の内容をソートする処理をシェルソートで組んでみました。
やろうとしているのは、n1、n2 の2つの配列に値を入れ、n1 が同じ値だったら n2 の値を使ってソートする、という処理です。
しかし実際には、n3、n4と無制限に続く2次元配列なので各配列を個別にソートしなければならず、n2 を先にソートしてから n1 をソートする、という処理を入れています。
ところがこれだと、n1 のソート時に同一の値の順序が崩れると、せっかく行った n2 のソートが無駄になってしまいます。
シェルソートの場合、こういうことは起こるのでしょうか。
よろしくお願いします。
お礼
ありがとうございました。お礼の返事が遅くなってしまってごめんなさい。とても参考になりました。大学の授業にもついていけるよう頑張っていきたいと思います。