你将如何在C#中的数据表中存储N维矢量?如何在C#中的数据表中存储N维的向量?
1
A
回答
3
对于真正的n维的东西,你可能不得不下降到更简单的概念 - 也许是一个多维数组(T[,...,]
)。
如果维数是已知且恒定的(但是> 1),则锯齿状阵列(T[]...[]
)或使用List<T>
等的包装等都是可行的。
使用未知维度的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. 如何在向量中存储数据?
- 2. 数据存储在C++中的向量中的错误
- 3. 在数组中存储n个向量的数目
- 4. n维向量
- 5. 如何在C#项目中存储表格常量数据?
- 6. 如何创建名称存储在向量中的数据帧
- 7. 在结构向量的结构向量图中存储数据
- 8. 如何在N维数组中存储800行,25列文件?
- 9. 如何在C中的多维数组中存储字符串?
- 10. 如何存储多维表单数据?
- 11. C++中的多维向量
- 12. 如何为C++中的静态n维数组分配内存
- 13. 如何存储N列的数据
- 14. 在<n个表中存储n-gram数据库
- 15. 如何将数据存储在存储在变量中的数组中?
- 16. 如何在数据库中存储稀疏布尔向量?
- 17. 如何在java中的向量中存储多个数据类型的集合?
- 18. 如何在多维数组中存储数据库中的数据
- 19. 将类存储在向量中C++
- 20. 如何将字符串变量中的数据表值存储在C#
- 21. C++ - 如何在向量中使用pcap_next_ex存储离线读取数据包?
- 22. 如何在sqlite中存储数据表?
- 23. 二维数组中的存储表jquery
- 24. 如何将共享内存中的浮点向量存储在C++中?
- 25. 如何在C++中存储和引用大量数据
- 26. 如何在Objective c中存储常量数据?
- 27. 如何在表名存储在变量中时加载数据?
- 28. 用于在C++中保存常量数据的存储器
- 29. 最好的方法来存储60维度的向量 - C++
- 30. 如何删除存储在向量中的std :: unique_ptr的内存
或者,如果每个维度的大小不同,则可以使用锯齿形数组int [] [] []。 – 2009-05-18 13:13:12