阵列长度检查速度
Array length checking speed
我离开了我的电脑,否则我会试一试:
假设我们有一个任意长度的数组(比如 5),每个索引按升序存储从 1 到 5 的数字(即 int[0] = 1 等)。
然后假设我们从用户那里获取一个输入,一个可变长度的数组,存储可变整数。我想验证两个数组是否相同。
对我来说,初步检查这些数组的长度是否相同,然后检查实际值是否相同,或者设置一些迭代循环系统来遍历两个数组并验证它们是否相同,这对我来说会更快吗?数组长度只是实际结构中的某个存储变量吗?我的意思是,速度差异将是微小的,我只是想知道。目前使用javascript。
但我的想法是,如果数组长度是一个变量,那么最好先访问它并进行比较,如果不是更好的迭代,因为 array.length 操作仍然会遍历数组来计算数字?
如果我随身携带文档就好了。
让我澄清一下我的评论:假设出于某种原因您想在不检查其长度的情况下实现比较。 好的,这意味着我们需要遍历元素并检查它们是否相等,听起来很简单,对吧? 这就是它的样子(为了清楚起见,在这里使用 Python,但这主要独立于语言):
def equal(arrayA, arrayB):
for i in range(0, ???):
if arrayA[i] != arrayB[i]:
return False
return True
但这里有一个问题,迭代何时停止? (???
部分有什么? 好吧,您必须在元素用完之前停下来,每当您到达min(len(arrayA), len(arrayB))
时都会发生这种情况。
唉,一个典型的min
函数将实现如下:
def min(x, y):
if x < y:
return x
else:
return y
这意味着您将需要进行比较<
。 好吧,如果你必须做一个比较,你也可以只做一个长度的相等比较,因为这在大多数架构上的成本大致相同。
结论是:你不能避免在数组的长度之间进行比较,所以你也可以利用这个机会来检查它们是否相等。
相关文章:
- 为什么不't Javascript对我的输入值进行了一些重新检查
- 在单击任何位置时隐藏元素,而不检查每次DOM单击
- 如何检查管道中未定义的项目
- 主干-不管怎样,检查事件以前是否绑定过
- 使用javascript检查多个输入值,并在1次检查中标记多个输入框
- 递归使用 eval() 是检查程序执行的好方法吗?
- 检查onsubmit doenst work jquery contactform上的函数
- JavaScript 检查隐藏字段中的值并将其设置为隐藏字段值
- API密钥使用和检查示例
- 如何让程序检查所选单词中是否有按键
- JS:检查URL中的参数,然后迭代一个参数为var的函数
- 用于检查数组中是否存在元素的javascript自定义方法
- Wacom stu-430签名捕获速度太慢
- 如何检查字符串的一部分与数组匹配
- Jquery如何检查今天的时间大于使用给定时间
- 使用javascript反复检查用户在facebook上的登录状态
- 阵列长度检查速度
- JavaScript 赋值与条件检查中的代码效率和速度比较
- 如何检查速度是动画
- 我如何检查/比较我的JavaScript代码速度/性能