最初の要素に基づいてサブ配列の配列を効率的にソートするにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-11-14 21:55:02
オリジナル
313 人が閲覧しました

How Can I Sort an Array of Subarrays Based on Their First Element Efficiently?

部分配列の最初の要素に基づいて配列を並べ替えるには、課題が生じます。配列を直接操作するのではなく、別のアプローチを検討してください。

元の配列を参照するインデックスの配列を作成します。インデックスの部分配列の最初の要素に基づいてインデックスを並べ替えます。

この戦略にはいくつかの利点があります。

  1. 元の配列自体を並べ替えるよりも効率的です。
  2. 配列の元の順序が保持されます。
  3. 複雑な並べ替え基準の処理が簡素化されます。

C での例を次に示します。

#include <algorithm>
#include <iostream>

int main()
{
    int index[3] = {0, 1, 2};
    int timeTable[3][2] = {{4, 204}, {10, 39}, {1, 500}};
    std::sort(index, index + 3, [&timeTable](int n1, int n2) {
        return timeTable[n1][0] < timeTable[n2][0];
    });

    for (int i = 0; i < 3; ++i)
    {
        std::cout << "The index is " << index[i] << ".  The data at this index is  ["
                  << timeTable[index[i]][0] << " " << timeTable[index[i]][1] << "]\n";
    }

    return 0;
}
ログイン後にコピー

ライブ例

元の配列を操作する代わりにインデックスを使用すると、複雑なデータ構造をより効率的かつ便利に並べ替えることができます。

以上が最初の要素に基づいてサブ配列の配列を効率的にソートするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート