找到 k 个数组元素之间的差异最小
Find k number of array elements having the minimum difference amongst themselves
所以基本上我有一个 n
整数数组(仅限正数)。我想将此数组中的 k
个整数放入一个单独的数组 (k<n)
中,以便这 k 个数字之间的差异是数组中所有其他 k
对整数之间的最小值。
如果k是1,我只需要return数组的最大整数。
我想在 JavaScript 中实现它。我了解如何 运行 这个问题的值 k=1
和 k=2
。但是我没有掌握这个问题的一般概念。
例如:
Array = [6,22,21,63,99,77]
我按升序对这个数组进行了排序。在此之后我不知道如何进一步进行。
对数组排序后,它变得类似于滑动 window 问题。
运行 从 i=0
到 n-k
的循环并检查以下内容。
找出 arr[i+k]
和 arr[i]
之间的最小差异。发生这种情况的索引是您想要的 k
整数的子集。
您可以查看此 link 以获取更多详细信息和编码帮助。
所以基本上我有一个 n
整数数组(仅限正数)。我想将此数组中的 k
个整数放入一个单独的数组 (k<n)
中,以便这 k 个数字之间的差异是数组中所有其他 k
对整数之间的最小值。
如果k是1,我只需要return数组的最大整数。
我想在 JavaScript 中实现它。我了解如何 运行 这个问题的值 k=1
和 k=2
。但是我没有掌握这个问题的一般概念。
例如:
Array = [6,22,21,63,99,77]
我按升序对这个数组进行了排序。在此之后我不知道如何进一步进行。
对数组排序后,它变得类似于滑动 window 问题。
运行 从 i=0
到 n-k
的循环并检查以下内容。
找出 arr[i+k]
和 arr[i]
之间的最小差异。发生这种情况的索引是您想要的 k
整数的子集。
您可以查看此 link 以获取更多详细信息和编码帮助。