Поиск в массиве для пользовательского значения - PullRequest
0 голосов
/ 13 марта 2020

Итак, у меня есть целочисленный массив 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);
                            }
                        }
                    }
...