如何在多个数字中查找两个数字之间的特定差异
how to look for a specific difference between two numbers in multiple numbers
我正在尝试找出多个号码列表中两个号码之间的特定差异。例如,如果我有一个列表 1、3、23、66、45、73,我想查找 20 的差异。
这是一个算法,可以找到所有差为 D 的对。
设 N 为数字列表,其中 N[i] 是列表中的第 i 个数字,i = 1 到 M。
- 按升序对 N 进行排序。
- 跟踪 N 上的两个索引 i 和 j。
- 设置 i = 1,j = 1。
- 对于每个 i,递增 j 直到 N[i] + D = N[j] 或 j 最大,而 N[i] + D 不会大于 N[j]。如果 N[i] + D = N[j] 则找到一对 (N[i] N[j])。继续下一个 i.
我正在尝试找出多个号码列表中两个号码之间的特定差异。例如,如果我有一个列表 1、3、23、66、45、73,我想查找 20 的差异。
这是一个算法,可以找到所有差为 D 的对。
设 N 为数字列表,其中 N[i] 是列表中的第 i 个数字,i = 1 到 M。
- 按升序对 N 进行排序。
- 跟踪 N 上的两个索引 i 和 j。
- 设置 i = 1,j = 1。
- 对于每个 i,递增 j 直到 N[i] + D = N[j] 或 j 最大,而 N[i] + D 不会大于 N[j]。如果 N[i] + D = N[j] 则找到一对 (N[i] N[j])。继续下一个 i.