求数组中两个元素的最小距离
2013-10-17 23:09
274 查看
int findNearPosition(int array[], int len, int A, int B) { if (array == null || len == 0) return 0; int A_pos = -1; int B_pos = -1; int minDist = len; for (int i=0; i<len; i++) { if (array[i] == A) { if (B_pos != -1) { minDist = min(i-B_pos, minDist); } A_pos = i; } if (array[i] == B) { if (A_pos != -1) { minDist = min(i-A_pos, minDist); } B_pos = i; } } return minDist; }
相关文章推荐
- 已知元素从小到大排列的两个数组x[]和y[],请写出一个程序算出两个数组彼此之间差的绝对值中最小的一个,这叫做数组的距离
- 数组中两个元素的最小距离
- 数据结构面试题总结3——数组:求数组中两个元素的最小距离
- 【谷歌面试题】求数组中两个元素的最小距离
- Java求解数组中的两个元素的最小距离
- 数组中两个元素的最小距离
- 数组中两个元素最小的距离
- 求数组中两个元素的最小距离
- 求数组中两个元素的最小距离
- 两个有序数组元素之积、和的最小K个值
- 每日一题(95) - 两个有序数组元素之积、和的最小K个值
- 有两个数组a,b,大小都为n,;通过交换a,b中的元素,使sum(a)-sum(b)最小
- 两个有序数组元素之和的最小K个值
- 有两个数组a,b,大小都为n,数组元素的值任意,无序;要求:通过交换a,b中的元素,使数组a元素的和与数组b元素的和之间的差最小
- 程序员面试题目总结--数组(三)【旋转数组的最小数字、旋转数组中查找指定数、两个排序数组所有元素中间值、数组中重复次数最多的数、数组中出现次数超过一半的数】
- 有两个数组a,b,大小都为n,;通过交换a,b中的元素,使sum(a)-sum(b)最小。
- 交换两个数组的元素使之总和的差值最小
- 微软面试:输出整型数组任意两个元素差的绝对值的最小值
- 《剑指offer》-递增数组中找到和为S的(最小)两个元素
- 华为面试题:通过交换元素,使两个数组的元素和之差最小