问题标签 [processing-efficiency]
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.
sqlite - SQLite - 外键比 int 列更有效吗?
我有一张桌子:
其中score
是百分比。
将整数值放入其中或将外键放入像这样的表中是否更有效?
显然,该表将填充 0-100。
我的想法是,如果您有 1000 名学生,将其保留为整数列将意味着查询速度更快,但使用的空间更多,使用外键意味着使用的空间更少,但查询速度更慢。
不确定这是否正确?
所以我想我会把它扔在那里!
c# - 在数组中查找多个错误值的最有效搜索算法
假设下一个数组:
每个值都是数据库中某个时期内特定状态下某些天的计数器。示例:期间 1/1/2000 - 1/3/2000(3 天,而不是 3 个月):状态XXXXX的天数。
我想要做的是检查对象计数与网站上的对象计数相比是否正确。如果网站未加载,搜索本身最多需要几秒钟。
我做了一个非常简单的测试项目,将 a 的值与另一个数组上的一些固定值进行比较,我随机选择了一些不同的值,实际上 15 个中有 7 个是不同的。
当前实现的算法是二分搜索。这段代码的输出是正确的,但是对于提供的数据,在真实应用程序上将发生的搜索次数为 144,这根本没有效率。是否有任何其他算法可以用来最小化搜索次数(或本例中的汇总计算)?
重要提示:这些时间段可以大到 2010 年 9 月 1 日 - 今天,因此暂时不能单独搜索每一天。
如果需要,请向我寻求解释。
r - 使用函数替换多个 for 循环
我希望有人可以快速查看这个示例并帮助我找到一种更好更有效的方法来解决这个问题。我想运行一个模拟来检查动物如何在一组特定条件下在站点之间移动。我有 5 个站点和一些初始概率,
对于这个例子,我只包括了 50 个模拟,但实际上我希望至少有 1000 个模拟,
}
这个想法是使用这个累积概率矩阵来根据随机数确定动物的命运,
在这个累积矩阵中,字母“A”、“B”、“C”、“D”和“E”代表不同的地点,“NA”代表在未来时间步离开和回来的概率,“离开”表示离开系统并且不再回来的概率。然后我使用随机数列表与累积概率矩阵进行比较,并确定该特定动物的“命运”。
for(o in 1:reps){
现在,主要问题是为每个初始参数(本例中为 10 个值)运行所有模拟需要很长时间。我需要找到一种更好/更有效的方法来跨所有初始参数运行 1000 个模拟/20 个站点。我不太熟悉加快这项任务的功能或其他方法。任何想法或建议将不胜感激。
非常感谢提前,
jdbc - 使用 JDBC 和 Clojure 访问大型数据集的有效方法是什么
编辑
事实证明,N00b 问题。我没有意识到运行lein ring server
会导致您的应用程序以解释模式运行,这就是它慢得多的原因。
可以优化以下 Clojure/JDBC 片段以使其运行(更快)速度吗?
我正在考虑将 Clojure 用于 ETL 项目。我写的第一个测试是从我有大约 280K 记录的表中打印出数据。到目前为止,我提出的实现非常缓慢。在 Java 中大约需要 12 秒(即使使用 myBatis 填充对象而不是“原始”访问)使用我的 Clojure 解决方案需要大约 9.5 分钟。
我尝试使用地图而不是doseq,并尝试使用此处概述的光标:http://asymmetrical-view.com/2010/10/14/clojure-and-large-result-sets.html ,但我得到的结果大致相同每个的执行时间。
FWIW,执行.println java.lang.System/out
(不足为奇)和使用 with-query-results* 时的结果相同:
彼此彼此。
performance - 为什么我的并行代码会比串行代码慢?
一般来说,并行代码是否可能比串行代码慢?我的是,我真的很沮丧!我能做些什么?
java - 高效搜索非空交叉点(Java)
我有一个返回整数值或整数范围(initial..final)的方法,我想知道值是否都是不相交的。
有没有比以下更有效的解决方案:
java - 哪个是java中用于更新列表中对象(如果存在)的最快和最有效的实现,否则添加它
我有一个有效的问题陈述,但我仍然想知道更有效、更快、更重要的是正确设计来处理下面提到的场景。
我有一个 POJO 类
我正在尝试填充一个列表,基本上是一个对象 A 的列表到列表中。现在有问题的实施。在将对象 A 添加到列表中时,我需要检查是否已经存在带有 String 的对象。如果是,我想用旧的 d1 + 新的 d1 更新旧的对象,并且不将新对象添加到列表中,如果没有,则将新对象添加到列表中。我目前的实现如下所示。
有没有更有效的方法在第二个 for 循环中进行处理?
c# - If\Else 更高效?
写出这个 if/else 语句是否有可能更简洁/有效的方式?我必须在这个数据库中的每个字段(接近 200 个字段)上检查 null 并且到最后代码看起来会很混乱。:\
c - 什么更有效,从文件中逐字读取或一次读取一行并使用 C 拆分字符串?
我想用 C 语言开发一个应用程序,我需要从磁盘上的文件中逐字检查。有人告诉我,从文件中读取一行然后将其拆分为单词会更有效,因为需要更少的文件访问。这是真的吗?
python - 在python中查找大量列表的交集
我有一个文件,每行包含空格分隔的数字。每行对应一个数字列表。
现在大约有 300,000 条这样的行(每行平均包含大约 100 个数字)。
我想找到所有此类列表的相互交集,即第一个列表与所有其他列表相交,然后第二个列表与所有其他列表相交,依此类推。
我在用
其中 a 和 b 是我在双循环中迭代的列表。
但这需要太多时间。例如:对于与所有其他列表相交的第一个列表,大约需要 3 分钟。
我怎样才能有效地做到这一点?(可能与其他一些语言/工具一起使用)