私は アルゴリズムの概要 のパート2を読み始め、セクションでデータの構造を作成しました。一連の数値を並べ替えるコンテキスト:
実際には、ソートする数値が孤立した値になることはほとんどありません。それぞれは通常、レコードと呼ばれるデータのコレクションの一部です。各レコードには、ソートする値であるキーが含まれ、レコードの残りの部分は、通常はキーとともに持ち運ばれる衛星データで構成されます。実際には、並べ替えアルゴリズムがキーを並べ替えるとき、衛星データも並べ替える必要があります。各レコードに大量の衛星データが含まれている場合、データの移動を最小限に抑えるために、レコード自体ではなく、レコードへのポインターの配列を並べ替えることがよくあります。
ここで著者の意味を説明できる人はいますか? 衛星データという用語はなぜですか?このコンセプトの背後にある直感は何ですか?また、この概念がJava?
著者が複雑なデータ構造を参照しているようです。 Javaのようなオブジェクト指向言語では、データ構造は多数のフィールドを含むオブジェクトになります。 Cのような言語では、構造はおそらくstruct
になります。並べ替えるときは、特定のフィールドによる並べ替えのみに関心がある場合があります。その他のフィールドは衛星データです。これらは構造の一部ですが、並べ替えアルゴリズムには関係ありません。
並べ替えるとき、構造を壊すことはできません。名前、現在の住所、社会保障番号、および年齢の属性を持つ人々のコレクションがあり、それらを年齢で並べ替えたい場合、4つのフィールド間の関連付けを変更することはできません。フィールドの値に基づいて構造内でそれらをソートする必要があるだけです。この例では、年齢が鍵であり、衛星データは名前、住所、社会保障番号です。
宇宙船としての衛星 の一般的な意味と混同されている可能性があります。あなたの引用の意味は宇宙技術についてではありません。
よりよく調べる ウィクショナリーの他の用語定義 :
重要人物の付き添い;誰かを軽蔑するような意味での誰かの従者のメンバー。ヘンチマン。 [16世紀以降] ...大きなものを周回する月またはその他の小さな天体[17世紀以降] ...他の組織の管轄、影響、または支配下にある国、州、事務所、建物など。 [19世紀から] ...
見積もりからのレコード内の衛星データは、上記の意味を参照しており、レコードキーは「主要」と見なされ、残りのデータはその直後に続きます。
レコード内の残りのデータは、キーのみを考慮に入れるソートのコンテキストではそれほど重要ではないと見なされます。ソートでは、支配的なのはレコードキーであり、残りはそれに従います。