问题标签 [math]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
7 回答
3351 浏览

language-agnostic - 防止算术上溢和下溢的最有效做法

防止算术上溢下溢的最有效做法是什么?

想到的一些例子是:

  • 基于有效输入范围的测试
  • 使用正式方法进行验证
  • 不变量的使用
  • 使用语言功能或库在运行时检测(这不会阻止它)
0 投票
3 回答
378 浏览

sql - 任何数据库都可以做数学吗?

数据库(特别是 MySQL,任何 SQL——MS、Oracle、Postgres——一般来说)能否进行大规模更新,并自行确定新值应该是什么?例如,我有一个数据库,其中包含有关一堆计算机的信息,所有这些计算机都有各种大小的驱动器——从 20 GB 到 250 GB 不等。然后有一天,我们通过添加 120 GB 硬盘来升级每台计算机。有没有办法说类似

0 投票
8 回答
63039 浏览

sql - 在 MS SQL 中计算百分位排名

在 MSSQL 2005 中计算百分位排名(例如第 90 个百分位或中位数分数)的最佳方法是什么?

我希望能够为单个分数列选择第 25、中位数和第 75 个百分位数(最好在单个记录中,以便我可以结合平均值、最大值和最小值)。例如,结果的表输出可能是:

0 投票
6 回答
25891 浏览

c# - 从大小为 n 的列表中找出哪些数字与另一个数字相加的算法

我有一个十进制数(我们称之为目标)和一个其他十进制数的数组(我们称之为数组元素),我需要从总和为目标的元素中找到所有数字组合。

我偏爱 C# (.Net 2.0) 中的解决方案,但无论如何最好的算法都可能获胜。

您的方法签名可能类似于:

0 投票
11 回答
23951 浏览

math - 你如何计算椭圆的轴对齐边界框?

如果椭圆的长轴是垂直的或水平的,那么边界框的计算很容易,但是当椭圆旋转时呢?

到目前为止,我能想到的唯一方法是计算周边的所有点并找到最大/最小 x 和 y 值。似乎应该有一个更简单的方法。

如果有一个函数(在数学意义上)以任意角度描述椭圆,那么我可以使用它的导数来找到斜率为零或未定义的点,但我似乎找不到。

编辑:澄清一下,我需要轴对齐的边界框,即它不应该与椭圆一起旋转,而是与 x 轴保持对齐,因此转换边界框将不起作用。

0 投票
5 回答
11138 浏览

math - LaTeX 中的年金或角度操作符号

如何在 LaTeX 中设置角度年金运算的符号?具体来说,这是精算as = (1-v s )/i。

0 投票
7 回答
441 浏览

multithreading - 切换到并行编码

我们都为单处理器编写代码。我想知道我们什么时候都能够在多处理器上编写代码?

我们需要什么(软件工具、逻辑、算法)来进行这种切换?

编辑:在我看来,当我们并行执行许多任务时,我们需要将这些现实生活中的解决方案(算法)转换为计算机语言。就像 OOP 编码对过程编码所做的那样。OOP 是一种比程序更真实的编码风格。所以我希望有这种解决方案。

0 投票
3 回答
33593 浏览

math - 解释 R 中的 quantile() 函数

我整天都对 R 分位数函数感到困惑。

我对分位数的工作方式和统计数据有一个直观的概念,但是天哪,天哪,它的文档让我感到困惑。

从文档:

Q[i](p) = (1 - 伽马) x[j] + 伽马 x[j+1],

到目前为止,我已经同意了。对于第 i类分位数,它是 x[j] 和 x [j+1] 之间的插值,基于一些神秘的常数gamma

其中 1 <= i <= 9, (jm)/n <= p < (j-m+1)/ n, x[j] 是第 j 阶统计量,n 是样本量,m 是确定的常数按样本分位数类型。这里 gamma 取决于 g = np+mj 的小数部分。

那么,如何计算j呢?米?

对于连续样本分位数类型(4 到 9),样本分位数可以通过 k 阶统计量和 p(k) 之间的线性插值获得:

p(k) = (k - alpha) / (n - alpha - beta + 1),其中 α 和 β 是由类型决定的常数。此外,m = alpha + p(1 - alpha - beta),并且 gamma = g。

现在我真的迷路了。p,以前是一个常数,现在显然是一个函数。

所以对于类型 7 分位数,默认...

类型 7

p(k) = (k - 1) / (n - 1)。在这种情况下,p(k) = mode[F(x[k])]。这是 S 使用的。

有人想帮我吗?特别是我对 p 是一个函数和一个常数的符号感到困惑,这到底是什么m,现在要为某些特定的p计算 j 。

我希望根据这里的答案,我们可以提交一些修改后的文档,以更好地解释这里发生的事情。

quantile.R 源代码 或类型:quantile.default

0 投票
6 回答
3118 浏览

math - 以编程方式查找网络掩码中的主机数

您如何以编程方式查找网络掩码支持的主机数量。

例如,如果你有一个 /30 ,你如何在不使用查找表的情况下找到其中有多少 IP?

最好能够使用“/”符号,而不是 255.xxx.xxx.xxx 符号。

0 投票
5 回答
6751 浏览

math - 3D 中的点三角形碰撞检测

如何在以下物理模拟中纠正浮点错误:

  • 原点(x,y,z),
  • 施加力后所需的点 (x', y', z')。
  • 共享边 BC 的两个三角形 (A, B, C) 和 (B, C, D)

我正在使用这种方法进行碰撞检测:

我遇到的问题是,有时该点会落入浮点数学的灰色区域,因为它非常靠近 BC 线,以至于它无法与任何一个三角形发生碰撞,即使从技术上讲它应该总是与一个或另一个发生碰撞,因为他们有共同的优势。当这种情况发生时,该点正好穿过两个共享边三角形之间。我已经用(!)标记了代码的一行,因为我相信那是我应该做出改变的地方。

在非常有限的情况下有效的一种想法是跳过边缘测试。有效地将三角形变成平面。这仅在我的网格是凸包时有效,但我计划创建凸形。

我专门使用点积和三角形法线进行所有前后测试。