- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
如果您是一位技术娴熟的低延迟 Java 开发人员(我不是)并且被告知要实现一组 int(无论是否为原始类型),您是否有可能在保证的前提下获得额外的性能提升前提是每个新条目都高于先前存储在集合中的任何其他值?
在最好/最坏的情况下,add
、contains
和 remove
操作的 yield 有多大?
一方面,这种限制会带来更好的性能似乎很自然。另一方面,非递减条目是一种非常常见的情况(例如在生成唯一 ID 时),如果 yield 值得为之奋斗,那么或多或少已知的实现就会已经开发出来。
最佳答案
当你检查这个 question ,您会发现 add
和 contains
已经是 O(1)。所以那里没有太多需要改进的地方。
而且我认为这两个将是唯一一次可以从此约束中受益的:
但仅此而已。
除此之外:当您的约束确实是要添加的每个"new"条目都大于最后一个条目时 - 那么您不需要Set 首先。因为您的约束 保证所有项目都是唯一的。所以从这个意义上说,您也可以研究列表......
关于问题在 O(1) 和 O(1.5) 之间的可能增量之间提出的评论;我的回复:
O(1) 和 O(n) 之间的区别是理论上的,您可以使用笔和纸来回答。 O(1.0) 和 O(1.005) 之间的区别......我将从实验和基准开始。
含义:这些“真实”因素取决于与底层实现“接近”的各种元素。您将首先研究您当前使用的 Set 是如何为您的平台实现的;以及 您的 平台上的 JVM 如何进行即时编译。从那里开始,您可以得出关于可以通过考虑此约束来改进的事情的结论。
最后;关于约束降低现有的实现。我想这也可能发生;如上所述:这些细节确实取决于具体实现。除此之外:您命名了三种不同的操作;实际结果可能大不相同;取决于操作类型。
如果我必须解决这个问题;我首先会使用“测试数据”(随机数、递增数;及其变体)创建相当大的文件。然后我会使用一个真正的 分析器(或者至少是复杂的 benchmarking )并开始测量。
关于java - 整数集。在增加新条目的情况下可能会提高性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42343170/
我正在寻找一种方法来创建根据价格选择我的产品的过滤器(选择下拉菜单)。 我知道这样的查询是完全可能的: SELECT * FROM products ORDER BY price ASC SELECT
函数参数中或显示尺寸时(高度,宽度)的顺序是否有约定? 最佳答案 我不知道大量的语言,但我使用过的语言(宽度,高度)。它更适合沿着 (x, y) 坐标线。 关于language-agnostic -
在我的表单中,我让用户输入房间的长度高度和宽度以获得 m2、m3 和瓦特的计算值。但是用户也应该能够直接输入 height 和 m2 来获取值。我尝试了很多语法,但 if else 不能正常工作。我知
我在 Elasticsearch 中创建了一个索引,看起来像 {"amazingdocs":{"aliases":{},"mappings":{"properties":{"Adj Close":{"
我有以下功能,我需要清除数据库中的所有图片列并移动到文件系统。当我一次性完成这一切时,内存太多并且会崩溃。我切换到递归函数并执行 20 次写入和批量操作。 我需要为大约 6 个表执行此操作。我的 Re
我正在编写一个函数来计算 PI 的值,并将其作为 double 值返回。到目前为止,一切都很好。但是一旦函数到达小数点后14位,它就不能再保存了。我假设这是因为 double 有限。我应该怎么做才能继
2020年是中国CDN行业从98年诞生到今天快速发展的第二十四年,相关数据显示,全国感知网速持续上扬,达到了3.29兆/秒,标志着在宽带中国的政策指导下,中国的网速水平正在大步赶上世界发达国家的水平
在 aerospike 集合中,我们有四个 bin userId、adId、timestamp、eventype,主键是 userId:timestamp。在 userId 上创建二级索引以获取特定用
$('#container').highcharts('Map', { title : { text : 'Highmaps basic demo'
有没有办法显示自定义宽度/高度的YouTube视频? 最佳答案 在YouTube网站上的this link中: You can resize the player by editing the obj
我使用 Highcharts ,我想在 Highcharts 状态下悬停时制作动态不同的颜色。 正如你可以看到不同的颜色,这就是我做的 var usMapChart , data = [] ; va
在所有节点上运行 tpstats 后。我看到很多节点都有大量的 ALL TIME BLOCKED NTR。我们有一个 4 节点集群,NTR ALL TIME BLOCKED 的值为: 节点 1:239
我发现 APC 上存在大量碎片 (>80%),但实际上性能似乎相当不错。我有 read another post这建议在 wordpress/w3tc 中禁用对象缓存,但我想知道减少碎片是否比首先缓存
对于我的脚本类(class),我们必须制作更高/更低的游戏。到目前为止,这是我的代码: import random seedVal = int(input("What seed should be u
我发现 APC 上存在大量碎片 (>80%),但实际上性能似乎相当不错。我有 read another post这建议在 wordpress/w3tc 中禁用对象缓存,但我想知道减少碎片是否比首先缓存
对于我的脚本类(class),我们必须制作更高/更低的游戏。到目前为止,这是我的代码: import random seedVal = int(input("What seed should be u
我已经 seen >2 字节的 unicode 代码点,如 U+10000 可以成对编写,如 \uD800\uDC00。它们似乎以半字节 d 开头,但我只注意到了这一点。 这个 split Actio
有人可以帮我理解为什么我的饼图百分比计算不正确吗?看截图: 根据我的计算,如 RHS 上所示,支出百分比应为 24.73%。传递给 Highcharts 的值如下:- 花费:204827099.36-
我阅读了有关该问题的所有答案,但我还没有找到任何解决方案。 我有一个应用程序,由我的 api 服务器提供。 Wildfly 8.1 和 Mysql 5.6。当查看时间到来时(Wildfly 服务器连接
我正在用选定的项目创建圆形导航。当用户单击任何项目时,它将移动到定义的特定点。一切都很好,除了当你继续点击项目时,当动画表现不同并且项目在 360 度圆中移动并且它被重置直到你重复场景时,我希望它
我是一名优秀的程序员,十分优秀!