草庐IT

数学规划

全部标签

c# - 评估数学表达式的最佳算法?

评估数学表达式的最佳算法是什么?我希望能够稍微优化一下,因为我可能有一个包含各种变量的公式,我可能需要使用不同的变量对其进行数百次评估。所以基本上,如果我最初可以解析公式,以便以某种方式对其进行优化,然后我可以根据需要多次将变量传递给这个优化版本,每次它都会为我生成一个结果。我将使用Delphi或C#编写此代码。我已经使用调车场算法编写了类似的东西,但每次我需要计算相同的公式时,我都必须经过解析阶段。必须有更好的方法来做到这一点。 最佳答案 如果你想用Delphi来做,你可以看看JclExprEval单元是如何工作的,它是JEDIC

2023美国大学数学建模美赛春季赛Z题思路详细代码

题目的第一问要求:COMAP的现代运动会跨学科委员会(ICMG)有兴趣探索创造性的选择、战略和政策,以确保奥运会取得成功并继续通过体育将世界联系在一起。你的任务是提出支持ICMG工作的建议。ICMG建议从多个角度建立衡量举办奥运会影响的指标:经济、土地使用、人类满意度(运动员和观众)、旅行、未来改进的机会、主办城市/国家声望以及您的团队确定的其他标准。我们分析如下,可以从以下角度考虑:经济影响:考虑衡量举办奥运会对主办城市/国家的经济影响,可以采用以下指标:GDP增长率、就业机会增加量、吸引外资量、商业活动量等。土地使用:考虑衡量举办奥运会对土地使用的影响,可以采用以下指标:使用土地面积、土地

C#:通用数学函数(Min、Max 等)

我正在考虑为基本数学运算(如Min、Max等)编写通用函数。但是我不知道如何比较两个通用类型:publicTMax(Tv1,Tv2)whereT:struct{return(v1>v2?v1:v2);}那怎么样?谢谢。 最佳答案 您可能想要constrain要实现的通用类型IComparable:publicTMax(Tv1,Tv2)whereT:struct,IComparable然后使用CompareTo方法:{return(v1.CompareTo(v2)>0?v1:v2);} 关

第十三届蓝桥杯复盘及未来规划

2022年4月28日第十三届蓝桥杯结果揭晓面对这份成绩,心里有些沉重qwq心里五味杂陈        当看到距离省1只差4个名额,当看到清晰又刺眼的’二等奖‘,当看到社群里面好多小伙伴拿到了省1的同时分享着喜悦,当想起自己从12月中旬开始写算法题与寒假的努力  当意识到自己与心心念念的国赛无缘当想起曾经梦想创造大一自学算法打入国三的自我传奇的抱负一瞬间有点什么都说不出的滋味 什么都落空了的感觉。这是我第一次写反思,考虑到逻辑性,从简书上看到一篇文章,下面就以放下情感,抽身而出,目标规划,转换角度,得出结论,指导实践的逻辑线展开叙述     "最简单的反思方法是一句口诀就是问自己我要改变什么,这

c# - 使用 Linq 进行数学统计

我有一个person对象的集合(IEnumerable),每个人都有一个age属性。我想生成集合的统计数据,例如此年龄属性的最大值、最小值、平均值、中值等。使用LINQ执行此操作的最优雅方法是什么? 最佳答案 这是Median的完整通用实现,它可以正确处理空集合和可为null的类型。它以Enumerable.Average的风格对LINQ友好,例如:double?medianAge=people.Median(p=>p.Age);当集合中没有非空值时,此实现返回null,但如果您不喜欢可为空的返回类型,则可以轻松地将其更改为抛出异常

c# - C# 中 3D 数学的好库?

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭7年前。Improvethisquestion我正在编写一个工具,用于处理大量3D数据,执行诸如旋转对象、平移、缩放等所有有用的事情。有谁知道已经有一些这种常见的3D东西的好库?目前我对可视化数据不感兴趣,主要对执行操作感兴趣。我知道我现在需要的东西:2D/3D/4D向量(加法、减法、点积、叉积等...)使用矩阵旋转/平移/缩放四元数我能够找到Sharp3D图书馆,但它似乎可以做我想做的事,但很长时间没有更新了。

c# - .NET 中的快速矢量数学 - 有哪些选项?

我的3D图形软件是使用SlimDX用C#编写的,它在CPU上执行大量矢量运算。(在这种特定情况下,无法将工作卸载到GPU)。我怎样才能使我的向量数学运算更快?到目前为止,我已经找到了这些方法:在Mono而不是Microsoft.NET上运行,因为它们支持SIMD。不是这个项目的选择。SlimGen,一个在运行时注入(inject)高性能数学代码的项目。遗憾的是,该项目尚未处于可用状态。使用使用SSE指令的编译器用C++编写DLL。与来自C#的DLL互操作。是否有任何其他选项可以在.NET中更快地完成矢量数学? 最佳答案 使用Micr

C# - 数学圆

我正在尝试了解如何使用C#舍入到最接近的十分位。例如,我有一个double类型的值。这个双倍目前设置为10.75。但是,我需要四舍五入然后截断所有超过十分之一的位置。在这种情况下,我正在寻找10.8的值。我如何在C#中四舍五入到十分位?谢谢! 最佳答案 Math.Round(yourNumber,1)第二个参数是四舍五入的小数位数。在您的情况下,您需要小数点后一位作为最终结果。 关于C#-数学圆,我们在StackOverflow上找到一个类似的问题: http

javascript - 如何在 JavaScript 中创建数学数字 1e6?

如何使用JavaScript创建数字1e6?varveryLargeNumber=//1e6 最佳答案 这里有一些不同的方法:varveryLargeNumber=1e6;varveryLargeNumber=1.0e+06;varveryLargeNumber=1000000;varveryLargeNumber=0xf4240;varveryLargeNumber=03641100;varveryLargeNumber=Math.pow(10,6); 关于javascript-如何在

数学建模——线性规划

目录基本概念模型求解和应用基于求解器的求解方法基于问题的求解方法其他 基本概念运筹学的一个重要分支是数学规划,线性规划是数学规划的一个重要的分支。变量称为决策变量,规划的目标称为目标函数,限制条件称为约束条件,s.t.是“受约束于”的意思。建立线性规划模型的一般步骤为:①分析问题,找出决策变量。②找出等式或不等式约束条件。③构造关于决策变量的一个线性函数。线性规划模型的一般形式:或:为目标函数的系数向量,又称为价值向量;为决策向量;为约束方程组的系数矩阵;为约束方程组的常数向量。还有标准型:目标函数为极大型,约束条件为等式约束。满足约束条件的解为可行解,使目标函数达到最大值得可行解角叫最优解。