どのようにC#のデータテーブルにN次元のベクトルを格納しますか?C#のデータテーブルにN次元のベクトルを格納する方法は?
1
A
答えて
3
本当にn次元のものについては、もっと単純な概念、多分多次元配列(T[,...,]
)に落とさなければならないでしょう。
ジグザグ配列(T[]...[]
)またはList<T>
などを使用するラッパーのようなものは、次元数がわかっていて定数(ただし> 1)であれば実行可能です。
未知の次元のArray
を使用した例:
int[] dimensions = { 3, 2, 5 }; // etc
Array arr = Array.CreateInstance(
typeof(int), dimensions);
int[] index = {0,0,0}; // etc
arr.SetValue(3, index);
しかし、寸法が知られている場合は明らかにそれは簡単です:
int[, ,] arr = new int[3, 2, 5];
arr[0, 0, 0] = 3;
多次元配列の問題は、彼らがすぐにできることですCLRが触れるのは大きすぎます。これは、ギザギザの配列や他のラッパーが(複数の小さなオブジェクトに分割することで)便利ですが、構築をもっと難しくします:
int[][][] arr = new int[3][][];
for(int i = 0 ; i < 3 ; i++) {
arr[i] = new int[2][];
for(int j = 0 ; j < 2 ; j++) {
arr[i][j] = new int[5];
}
}
arr[0][0][0] = 3;
これらのうちのいずれかは、通常、おそらく合理的なアプローチであるクラス内でラップすることができます。
1
事前に寸法の数がわかっている場合は、寸法ごとに1つの「列」を作成するだけで済みます。
関連する問題
- 1. n次元ベクトル
- 2. Python:PyTablesにnumpy多次元配列を格納する方法は?
- 3. JSONオブジェクトを多次元配列に格納する方法
- 4. ベクトルを多次元ベクトルに挿入する方法は?
- 5. 2次元ベクトルC++
- 6. sqliteにデータテーブルを格納する方法は?
- 7. 多次元配列をC言語で格納する
- 8. 行列の列を合計してC++のベクトルに格納する方法
- 9. 多次元動的配列の格納
- 10. 配列をデータテーブルに格納
- 11. 空の文字列をベクトルに格納する方法
- 12. n次元のRandomWalkの生成方法
- 13. PHPを使用してmysqlに多次元配列を格納する方法
- 14. 多次元配列のデータベースからデータを格納する方法
- 15. Google App Engineデータストア内に多次元配列を格納する方法
- 16. Java - 一意のオブジェクトタプル(n次元)を作成する方法は?
- 17. N次元cv :: Matの次元のサイズ
- 18. 多次元配列へのパーミッションを格納するPHP
- 19. ポインタを多次元配列に格納する
- 20. 多次元配列にデータを格納するPHP
- 21. Push_back 1次元ベクトルを2次元ベクトル配列に
- 22. 2D配列をC++で2Dベクトルに格納する
- 23. n次元「単位行列」を生成する方法は?
- 24. 多次元ベクトル
- 25. n次元マッチングアルゴリズム
- 26. C++でテキストファイルを2次元動的ベクトルに読み込む方法は?
- 27. イメージ情報をMATLABの2次元配列に格納する方法はありますか?
- 28. doctrine 2を使用して多次元配列を格納する最良の方法は何ですか?
- 29. ベクトル内のauto_ptrへのポインタを格納
- 30. C#で値の行列を格納する方法は?
また、ジグザグ配列int [] [] []を使用すると、各ディメンションのサイズが異なる場合があります。 –
上記の配列コードに基づいてコレクションを構築するのは簡単です。 @ニック - 確かに; – Brian
;ギザギザの例が追加されました。コードを正しく取得するのに時間がかかります!しかし、次元数がわからない場合は、ギザギザの配列を扱うのは非常に難しいです。 –