![](/img/trans.png)
[英]How to check every digit of a number is greater or equal than another number?
[英]Is there a faster way to check if an item in a list if it is greater than, less than, equal to a certain number?
有没有一种更快的方法来检查列表中的项目是否大于,小于或等于某个数字?
还是只需要遍历它? 我只是好奇是否有预建的功能。
例:
清单包含5、5、10、15、15、20。
我想检查实际上是否有多少个项目> =5。所以答案是6。如果我想检查> = 15,则答案应该是3。
step 1 : sort the list
step 2 : find the index for desired element
step 3 : print length-index
我在文档中没有看到任何这样的方法,所以我要说不 。 您必须遍历列表。 如果已排序,则可以执行二进制搜索以获得更快的结果。
您需要循环检查每个元素的条件。
您要排序吗? 如果要处理数组,则可以使用Arrays.sort()
如果要处理集合,则可以使用Collections.sort()
没有预构建的功能afaik。 如果您的列表项不是顺序关键的(即,您没有创建任何优先级列表或LIFO / FIFO),则可以在查找元素之前改善对排序列表的搜索。
您可以对列表进行排序,然后只需将其第一个和最后一个元素与数字进行比较。
这就是为什么我要问一个问题,即当前Collection中是否存在这种方法。
标准集合API中没有这种方法。
写一个循环。 它比在Internet上搜索第三方库要更快,并且测试5行方法可以做到这一点。 而且您的代码很可能会更快……当然也不会慢。
去做就对了。 (我会亲自为您编写代码,但这听起来像您需要练习...)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.