Итак, у меня есть целочисленный массив OriginalArray, который содержит кучу целых чисел. Я хочу иметь возможность сделать так, чтобы пользователь мог вводить любое значение и, если оно находится в массиве, указать местоположение этого значения и, если оно появляется несколько раз в массиве, сделать так, чтобы оно предоставляло все местоположения, и в противном случае оно должно обеспечивать сообщение об ошибке. Я ХОЧУ использовать технику бинарного поиска и / или линейного поиска и / или интерполяционного поиска, чтобы добиться этого, рекурсивно или итеративно, я не против.
Извините за небольшую информацию для go о попытке справиться с трудной задачей для меня, и я не самый опытный:)
static object BinarySearchRecursive(int[] inputArray, int key, int min, int max)
{
if (min > max)
{
return "Nil";
}
else
{
int mid = (min + max) / 2;
if (key == inputArray[mid])
{
return ++mid;
}
else if (key < inputArray[mid])
{
return BinarySearchRecursive(inputArray, key, min, mid - 1);
}
else
{
return BinarySearchRecursive(inputArray, key, mid + 1, max);
}
}
}