问题标签 [optimization]
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.
c - 在 C 中优化搜索算法
可以使用 C 的任何本机实用程序来改进这种顺序搜索算法(取自 编程实践)的性能,例如,如果我将 i 变量设置为寄存器变量?
c++ - 浮动和双重比较最有效的方法是什么?
double
比较两个或两个float
值的最有效方法是什么?
简单地这样做是不正确的:
但是像:
好像是废物处理。
有谁知道更智能的浮动比较器?
python - 在 Python 中从序列中删除项目的优雅方法?
当我在 Python 中编写代码时,我经常需要根据某些标准从列表或其他序列类型中删除项目。我还没有找到优雅高效的解决方案,因为从您当前正在迭代的列表中删除项目是不好的。例如,您不能这样做:
我通常最终会做这样的事情:
这是低效的,相当丑陋的并且可能有错误(它如何处理多个“约翰史密斯”条目?)。有没有人有更优雅的解决方案,或者至少是更有效的解决方案?
一个与字典一起工作的怎么样?
.net - .NET 中的内存泄漏
在 .NET 中发生内存泄漏的所有可能方式有哪些?
我知道两个:
- 未正确取消注册Event Handlers/Delegates。
- 不在 Windows 窗体中释放动态子控件:
例子:
更新:这个想法是列出不太明显的常见陷阱(例如上面的)。通常的想法是,由于垃圾收集器,内存泄漏不是一个大问题。不像以前在 C++ 中那样。
很棒的讨论家伙,但让我澄清一下……根据定义,如果在 .NET 中没有对对象的引用,它将在某个时候被垃圾收集。所以这不是诱发内存泄漏的方法。
在托管环境中,如果您无意中引用了您不知道的任何对象(因此我的问题中有两个示例),我会认为这是内存泄漏。
那么,发生这种内存泄漏的各种可能方式是什么?
c# - 连接字符串的最有效方法?
连接字符串的最有效方法是什么?
sql - 构造一个 SQL 表以进行匹配还是不返回结果更好?
我有一个有趣的设计问题。我正在设计我们项目的安全方面,以允许我们以不同的成本拥有不同版本的程序,并允许经理类型的用户授予或拒绝其他用户访问程序的某些部分。它基于网络并托管在我们的服务器上。
我为每个“资源”或屏幕使用简单的允许或拒绝选项。
我们将拥有大量资源,用户将能够设置许多不同的组来将用户放入以控制访问。每个用户只能属于一个组。
我有两种方法可以解决这个问题,并且很好奇在性能方面哪种方法更适合 SQL 服务器。
选项 A 访问表中存在条目意味着允许访问。这将不需要数据库中的列来存储信息。如果没有返回结果,则拒绝访问。
我认为这将意味着一个较小的表,但查询会搜索整个表以确定没有匹配项吗?
选项 B 控制允许/拒绝的数据库中包含一个位列。这将意味着总能找到一个结果,并形成一个更大的表。
想法?
c - C 中的 i++ 和 ++i 之间是否存在性能差异?
如果不使用结果值i++
,是否存在性能差异?++i
sql - 什么是最优的?UNION vs WHERE IN (str1, str2, str3)
我正在编写一个程序,在客户的特定当地时间发送一封电子邮件。我有一个 .NET 方法,它采用时区和时间以及目标时区并返回该时区的时间。所以我的方法是选择数据库中的每个不同时区,使用该方法检查它是否是正确的时间,然后选择具有该时区的数据库中的每个客户端。
查询看起来像其中之一。请记住,结果集的顺序无关紧要,所以联合就可以了。哪个跑得更快,或者他们真的做同样的事情?
或者
编辑:timezoneID 是 tTimezone 的外键,这是一个具有主键 timezoneID 和 varchar(20) 字段 timezoneName 的表。
另外,WHERE IN
因为我不想打开分析仪,所以我去了。
编辑 2:查询在 100 毫秒内处理 200k 行,所以现在我完成了。
c# - 获取所有实现接口的类型
使用反射,我怎样才能以最少的代码获得所有使用 C# 3.0/.NET 3.5 实现接口并最小化迭代的类型?
这是我想重写的:
optimization - 针对低带宽进行优化
我负责设计一个显示非常大的地理数据的 Web 应用程序。其中一个要求是它应该被优化,以便在我国郊区常见的拨号上网的PC也可以使用它。
现在我被允许使用 Flash 和/或 Silverlight,如果这将有助于有限的开发时间和用户体验。
地理数据的大部分被分块成瓦片并像谷歌地图中的地图瓦片一样加载,但这意味着我需要大量的 HTTP 请求。
我应该只使用 javascript + HTML 吗?我最终会得到一个更快的关于 Flash/Silverlight 的应用程序吗?因为我可以对这两种技术(比如 DeepZoom)做一些复杂的算法。不过,部署桌面应用程序是不可能的,因为我们没有那么多维护资金。
它只需要快……真的快……
ps faster 是“下载速度更快”的意思