-1

この件について、現在の問題に当てはまるものは何も見つからなかったので、次の解決方法についていくつかのアイデアを得られることを望んでいました。

私は基本的に、それぞれが多くの値を持つ次の情報を保持する 2 つのリストを持っています。

リスト 1:

int row
string text

リスト 2:

int column
string text

私がやりたいことは、2 つのリストを 1 つに統合することです。ただし、どのオブジェクトを使用すればよいかはよくわかりません。私が知っている最も近いのは、ヘッダー情報「行」、「列」、および「テキスト」を持つ.CSVです。しかし、私は本当に.CSVを書きたくないので、それをプログラムにロードしてさらに作業する必要があります-オブジェクト/配列が必要です。このようなものは存在しますか?

その後、最初に「行」で並べ替え、次に「列」で並べ替えるように、値を並べ替えることができるようにする必要もあります。最終製品は次のようになります。

row        column        text
0          0             test1
0          1             test2
1          0             test3
...

あなたの助けは大歓迎です (はい、私は C# の初心者です)。

4

2 に答える 2

1
List<MyClass> list1 = new List<MyClass>();
List<MyClass> list2  = new List<MyClass>();

この MyClass は、データを保存するクラスであることに注意してください。

// Merge two List
list1.AddRange(list2);

次に、並べ替えの場合、次のようなことができます

List<MyClass> sortedList = list1.OrderBy(x => x.row).ThenBy(x => x.column).ToList();
于 2013-08-18T14:54:38.257 に答える
0

ええと、必要なのはデータ構造、つまりソートされたものだと思います。おそらく、CircularSortedLinkedList が機能するはずです (オンラインで調べてください)。これは、大量のデータを管理する場合に有効です。そうでない場合は、文字列をcompareToと比較するだけでよいと思います(これは、文字列1>文字列2またはその逆かどうかを示す値を取得し、それ以外の場合はさまざまなものと比較します。

お役に立てれば

于 2013-08-18T14:53:10.847 に答える