поиск в массиве и сравнение их

0

Напишите программу, которая берет два целых массива от пользователя (не более 50 членов). Первый массив должен быть длиннее второго; затем проверяет, существуют ли все элементы во втором массиве в первом порядке, в том же порядке, независимо от расстояния между членами в первом массиве. Наконец, программа сообщает пользователю, включено это условие или нет.

  • 1
    Можете ли вы привести (краткий) пример значений массива, которые вы ожидаете увидеть?
  • 0
    добро пожаловать дорогой пользователь! Сколько членов в первом массиве? 10 Введите элемент 1 массива 1:20 Введите элемент 2 массива 1: 1 Введите элемент 3 массива 1:16 Введите элемент 4 массива 1: 5 Введите элемент 5 массива 1: 9 Введите элемент 6 массива 1:12 Введите элемент 7 массива 1:25 Введите элемент 8 массива 1: 60 Введите элемент 9 массива 1: 2 Введите элемент 10 массива 1:27 Сколько элементов во втором массиве? 5 Введите элемент 1 массива 2: 1 Введите элемент 2 массива 2: 5 Введите элемент 3 массива 2:25 Введите элемент 4 массива 2:12 Введите элемент 5 массива 2: 2 Условие НЕ включено! нажмите любую клавишу для выхода
Показать ещё 4 комментария
Теги:
arrays

1 ответ

0

Длина массивов не имеет значения, если вы знаете их длину. В любом случае, вы должны проверить, чтобы пройти мимо них.

Здесь алгоритм:

if length of array2 is greater than 1, end.  // All of array can't be in array 1.

// Find the first element of array 2 that is in array 1:
// Note:  this only searches up to array1.length - array2.length,
//        because of the restriction of ordering and length of array 2.
key = first element of array 2.
found = false;
for (index = 0; index < (array1.length - array2.length); ++index)
  if (array[index] == key) then found = true, break out of loop. 
  end-for
if not found, end.  // No use in detailed searching.

// Now compare the elements of the two arrays, one by one, 
// starting with the second element of array2 and the element
// of array1 at (index + 1).

Есть более эффективные алгоритмы, но это должно заставить вас начать, пока кто-то не разместит точный код, поэтому вам не придется делать какие-либо работы самостоятельно.

  • 0
    Спасибо за помощь! на самом деле я пишу это сам, но у меня есть некоторые проблемы с этим !!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню