Skip to content

Instantly share code, notes, and snippets.

@V0L0DYMYR
Created March 18, 2015 08:39
Show Gist options
  • Select an option

  • Save V0L0DYMYR/7646f4cfbc67554c5e15 to your computer and use it in GitHub Desktop.

Select an option

Save V0L0DYMYR/7646f4cfbc67554c5e15 to your computer and use it in GitHub Desktop.
FindDistance.java
public class FindDistance {
public static void main(String[] args) {
int[] array = {1, 2, 2, 1, 2, 2, 2, 1, 2, 2, 1, 1, 2};
int distance = 0;
if (array.length > 1) {
int min1 = array[1], min2 = array[0], index1 = 1, index2 = 0;
for (int i = 2; i < array.length; i++) {
if (array[i] < min1) {
min2 = min1;
min1 = array[i];
index2 = index1;
index1 = i;
distance = Math.abs(index1 - index2);
} else if (array[i] < min2) {
min2 = array[i];
index2 = i;
distance = Math.abs(index1 - index2);
} else if (array[i] == min1 && min1 == min2) {
if (index1 < index2) {
index1 = i;
} else {
index2 = i;
}
distance = Math.min(distance, Math.abs(index1 - index2));
} else if (array[i] == min1) {
index1 = i;
distance = Math.min(distance, Math.abs(index1 - index2));
} else if (array[i] == min2) {
index2 = i;
distance = Math.min(distance, Math.abs(index1 - index2));
}
}
}
System.out.println(distance);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment