24.11.16 - Задачи

Задачи

Поиск максимального элемента в массиве

Примером простейшего алгоритма обработки массива можно считать поиск максимального элемента. Найти максимальный элемент - это означает найти его значение maxVal и maxIndex .

Алгоритм
int maxIndex = 0;
int maxValue = arr[0]; // или Int32.MinValue;

for (int i = 0; i < arr.Length; ++i)
{
  if (maxValue > arr[i])
  {
    maxValue = arr[i];
    maxIndex = i;
  }
}

Удаление элемента с заданным индексом

В рамках этого курса физического изменение размера массива не рассматривается. Удалить элемент означает удалить элемент с заданным индексом kk означает сдвинуть все следующие за ним элементы на одну позицию влево, т.е. выполнить операцию ai=ai+1a_i = a_i + 1 для i=k,k+1,...,n1i = k, k + 1, ..., n - 1 

Инициализация массива с STDIN

const int ARRAY_SIZE = int.Parse(Console.ReadLine()); // константы в uppercase
int[] arr = new int[ARRAY_SIZE];

for (int i = 0; i < ARRAY_SIZE; ++i)
{
  arr[i] = int.Parse(Console.ReadLine());
}

  • Удалить элемент с произвольным индексом. Сделать проверку входных данных = 1
  • Найдите минимальный элемент в массиве произвольной длины = 1
  • Дан массив размером 10. Сформировать два массива размером 5, включая в первый массив элементы исходного массива с четными индексами, во второй – с нечетными. = 1
  • В одномерном массиве найти сумму элементов, расположенных до максимального элемента массива = 1
  • Задан одномерный массив. Сформировать другой одномерный массив из отрицательных элементов, расположенных между максимальным и минимальным элементами исходного массива. = 1
  • Заданы массивы А и В, содержащие n и m элементов соответственно. Вставить массив В между k-м и (k + 1)-м элементами массива А (k задано). = 1
  • Упорядочить по возрастанию элементы массива с четными индексами (остальные элементы оставить на своих местах). = 1
  • Из массива удалить повторяющиеся элементы. = 1
  • *Заданный массив преобразовать таким образом, чтобы все его элементы принадлежали отрезку [–1, 1]. Предусмотреть возможность обратного преобразования. = 3