Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/263.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 随机矩阵的最佳类型&x2014;需要一个来源吗_C#_Java_Floating Point_Double - Fatal编程技术网

C# 随机矩阵的最佳类型&x2014;需要一个来源吗

C# 随机矩阵的最佳类型&x2014;需要一个来源吗,c#,java,floating-point,double,C#,Java,Floating Point,Double,我重写了整个问题,把它讲清楚 我需要一种能装一张纸的打字机。我需要这是在Java或C#(Java优先) 我需要一个内置型的。它可能是一个由某人编写的类,但问题是,在我的论文中,我需要参考所有内容,所以它应该来自一篇文章、一本书等 正如在随机矩阵中一样,一行中的所有元素都需要和为1,我需要一个数据类型来保证这一点。我知道,内置类型不能保证这一点。但是否有一种类型可以保证我们假设计算的每个值都向上舍入到例如10位 我还需要参考一本书或一篇文章,其中提到这种数据类型可用于在计算机内存中存储随机矩阵 J

我重写了整个问题,把它讲清楚

我需要一种能装一张纸的打字机。我需要这是在Java或C#(Java优先)

我需要一个内置型的。它可能是一个由某人编写的类,但问题是,在我的论文中,我需要参考所有内容,所以它应该来自一篇文章、一本书等

正如在随机矩阵中一样,一行中的所有元素都需要和为1,我需要一个数据类型来保证这一点。我知道,内置类型不能保证这一点。但是否有一种类型可以保证我们假设计算的每个值都向上舍入到例如10位

我还需要参考一本书或一篇文章,其中提到这种数据类型可用于在计算机内存中存储随机矩阵

Java中的
BigDecimal
或C中的
decimal
是否合适?

没有内置类型(在这两种语言中的任何一种)可以满足所有行总和为1的(合理任意)要求。当然,自己编写这篇文章是非常简单的(对于浮点,使用适当的误差余量…)

我无法想象为什么你只说“矩阵将是随机的”就需要一个参考。如果您需要清楚地指定类型(出于某些奇怪的原因…),那么您必须求助于指定算法来强制实现所需的完整性(显然,这非常简单)。

没有内置类型(在这两种语言中的任何一种)可以满足(合理的任意性)要求所有行的总和为1。当然,自己编写这篇文章是非常简单的(对于浮点,使用适当的误差余量…)


我无法想象为什么你只说“矩阵将是随机的”就需要一个参考。如果您需要清楚地指定类型(出于某些奇怪的原因…),那么您将不得不求助于指定算法来强制实现所需的完整性(显然,这非常简单)。

您所说的“最佳”类型是什么意思?我对随机矩阵没有很好的理解,但我马上就发现了一个问题。你需要比双人间更高的精确度。“一个随机向量,其元素由非负实数和1组成”(维基百科)。如果存储的元素实际上添加到了0.9999999999993或其他什么东西,但当您计算它们添加到1的元素时,会怎么样?@Corbin:所以我需要其他数据类型的格式……正如Oli所说,这取决于最佳值。对于任何类型的数据结构,都会有权衡。在性能紧张的情况下,N维双打阵列可能是最佳选择。在绝对精度不可协商的情况下,更高精度的类型(最有可能是非本机类型)会“更好”。“你知道些什么”-这意味着你出于特定的原因有意识地选择了
double
。那是什么原因?你说的“最佳”类型是什么意思?我对随机矩阵不是很了解,但我马上就看到了一个问题。你需要比双人间更高的精确度。“一个随机向量,其元素由非负实数和1组成”(维基百科)。如果存储的元素实际上添加到了0.9999999999993或其他什么东西,但当您计算它们添加到1的元素时,会怎么样?@Corbin:所以我需要其他数据类型的格式……正如Oli所说,这取决于最佳值。对于任何类型的数据结构,都会有权衡。在性能紧张的情况下,N维双打阵列可能是最佳选择。在绝对精度不可协商的情况下,更高精度的类型(最有可能是非本机类型)会“更好”。“你知道些什么”-这意味着你出于特定的原因有意识地选择了
double
。这是什么原因?我不需要一个参考来说明“矩阵将是随机的”。我需要一个证明来证明我选择的类型是正确的;你只需要一个理由来解释为什么它是有效的。要么你可以提供这个论点,要么你可以找到其他人。但我想说的是,它是如此的琐碎,以至于你可以做到。你会用哪一个呢
double
decimal
BigDecimal
?我会使用c#和
decimal
,因为它不会遇到与double相同的问题。但从某种意义上讲,这并不重要,因为您仍然需要对可以考虑的错误幅度和有效概率范围做出相同的评论(为此,您需要一个参考,即来自语言本身,您可以很容易找到)?哪一个更好?为什么?我不需要说“矩阵是随机的”。我需要一个证明来证明我选择的类型是正确的;你只需要一个理由来解释为什么它是有效的。要么你可以提供这个论点,要么你可以找到其他人。但我想说的是,它是如此的琐碎,以至于你可以做到。你会用哪一个呢
double
decimal
BigDecimal
?我会使用c#和
decimal
,因为它不会遇到与double相同的问题。但从某种意义上讲,这并不重要,因为您仍然需要对可以考虑的错误幅度和有效概率范围做出相同的评论(为此,您需要一个参考,即来自语言本身,您可以很容易找到)?哪一个更好,为什么?