Опубликован: 02.02.2011 | Уровень: для всех | Доступ: свободно
Лекция 48:

Задания

Задание 4. Одномерный массив: сортировка массива

Решите задачи данной группы, оформив решение в виде функций генерации, вывода и обработки массивов. Предусмотрите в функции генерации массива ввод границ диапазона случайных чисел.

  1. Отсортируйте в массиве нечетные элементы по убыванию.
  2. Организуйте массив, содержащий 20 различных случайных целых чисел. После этого элементы массива упорядочиваются по убыванию, и содержимое отсортированного массива выводится на экран.
  3. Сортировка подсчетом. Выходной массив заполняется значениями –1. Затем для каждого элемента определяется его место в выходном массиве путем подсчета количества элементов, строго меньших данного. Естественно, что все одинаковые элементы попадают на одну позицию, за которой следует ряд значений –1. После этого оставшиеся в выходном массиве позиции со значением –1 заполняются копией предыдущего значения.
  4. Организуйте массив, содержащий 15 различных целых чисел. После этого отдельно первые 5 элементов, вторые 5 элементов и последние 5 элементов сортируются по возрастанию. Содержимое отсортированного таким образом массива выводится на экран.
  5. "Хитрая" сортировка. Из массива путем однократного просмотра выбирается последовательность элементов, расположенных в порядке возрастания, переносится в выходной массив и заменяется во входном значением -1. Затем оставшиеся элементы включаются в полученную упорядоченную последовательность методом "погружения", когда очередной элемент путем ряда обменов "погружается" до требуемой позиции в уже упорядоченную часть массива.
  6. Дано линейное множество A из N точек. Найти такую точку из данного множества, сумма расстояний от которой до остальных его точек максимальна, и саму эту сумму.
  7. Дано линейное множество A из N точек. Найти пару различных точек этого множества с максимальным расстоянием между ними и само это расстояние (точки выводятся в том же порядке, в котором они перечислены при задании множества A ).
  8. Организуйте массив, содержащий 2n целых чисел. Отсортируйте элементы с нечётными индексами по возрастанию.
  9. Дан массив размера N. Вывести индексы массива в том порядке, в котором соответствующие им элементы образуют возрастающую последовательность.
  10. Отсортируйте в массиве четные элементы по возрастанию.
  11. Создайте целочисленный массив, содержащий 2n различных чисел. Отсортируйте первую половину массива по возрастанию, а вторую по убыванию. Выведите на экран, отсортированный таким образом массива.
  12. Отсортируйте в массиве положительные элементы по возрастанию, отрицательные – по убыванию.
  13. Массивы А и В заполнены случайными различными числами, причем в В в 2 раза меньше элементов, чем в А. Определите входят ли все элементы В в А.
  14. Дан массив размера N. Вывести индексы массива в том порядке, в котором соответствующие им элементы образуют убывающую последовательность.
  15. На координатной прямой дана точка A и множество B из N точек. Найти номер точки из множества B, наиболее близкой от точки A.
  16. Организуйте массив, содержащий 2n целых чисел. Отсортируйте элементы с нечётными индексами по убыванию.
  17. Дано линейное множество A из N точек. Найти такую точку из данного множества, сумма расстояний от которой до остальных его точек минимальна, и саму эту сумму.
  18. Дана точка A и множество B из N точек. Найти номер точки из множества B, наиболее удаленной от точки A.
  19. Дано линейное множество A из N точек. Найти пару различных точек этого множества с минимальным расстоянием между ними и само это расстояние (точки выводятся в том же порядке, в котором они перечислены при задании множества A ).
  20. Даны множества A и B, состоящие соответственно из N1 и N2 точек. Найти максимальное расстояние между точками этих множеств и сами точки, расположенные на этом расстоянии.
  21. В массиве 2 n + 1 различных элементов. Найдите средний элемент массива. Под средним элементом понимают такой, для которого в массиве n элементов больше его и n элементов меньше.
  22. Даны линейные множества A и B, состоящие соответственно из N1 и N2 точек. Найти минимальное расстояние между точками этих множеств и сами точки, расположенные на этом расстоянии.
  23. В массиве 3n элементов. Отсортируйте первые n элементов массива по убыванию, последние n элементов по возрастанию.
  24. Даны два массива А и В. Сформируйте из них массив С, в котором элементы отсортированы по убыванию.
  25. Дан целочисленный массив А. Отсортируйте по возрастанию те его элементы, которые входят во введенный отрезок [a, b].
  26. Дано линейное множество A из N точек. Найти такую точку из данного множества, которая наиболее близка к значению среднего арифметического элементов массива.
  27. Дан массив А, состоящий из 2N элементов. Разбейте его на массивы В и С по N элементов каждый так, чтобы каждый элемент В не превосходил каждого элемента С.
  28. Дан массив А, состоящий из N целых чисел. Сформируйте массив В, состоящий из убывающей последовательности различных элементов массива А.
Денис Курбатов
Денис Курбатов
Выполнение каких функций не изменяет позицию указателя в файле?
Владислав Нагорный
Владислав Нагорный
Высшее образование
Сергей Злобин
Сергей Злобин
Россия, Подольск
Олег Корсак
Олег Корсак
Латвия, Рига