Опубликован: 02.02.2011 | Уровень: для всех | Доступ: свободно
Лекция 48:
Задания
Задание 4. Одномерный массив: сортировка массива
Решите задачи данной группы, оформив решение в виде функций генерации, вывода и обработки массивов. Предусмотрите в функции генерации массива ввод границ диапазона случайных чисел.
- Отсортируйте в массиве нечетные элементы по убыванию.
- Организуйте массив, содержащий 20 различных случайных целых чисел. После этого элементы массива упорядочиваются по убыванию, и содержимое отсортированного массива выводится на экран.
- Сортировка подсчетом. Выходной массив заполняется значениями –1. Затем для каждого элемента определяется его место в выходном массиве путем подсчета количества элементов, строго меньших данного. Естественно, что все одинаковые элементы попадают на одну позицию, за которой следует ряд значений –1. После этого оставшиеся в выходном массиве позиции со значением –1 заполняются копией предыдущего значения.
- Организуйте массив, содержащий 15 различных целых чисел. После этого отдельно первые 5 элементов, вторые 5 элементов и последние 5 элементов сортируются по возрастанию. Содержимое отсортированного таким образом массива выводится на экран.
- "Хитрая" сортировка. Из массива путем однократного просмотра выбирается последовательность элементов, расположенных в порядке возрастания, переносится в выходной массив и заменяется во входном значением -1. Затем оставшиеся элементы включаются в полученную упорядоченную последовательность методом "погружения", когда очередной элемент путем ряда обменов "погружается" до требуемой позиции в уже упорядоченную часть массива.
- Дано линейное множество A из N точек. Найти такую точку из данного множества, сумма расстояний от которой до остальных его точек максимальна, и саму эту сумму.
- Дано линейное множество A из N точек. Найти пару различных точек этого множества с максимальным расстоянием между ними и само это расстояние (точки выводятся в том же порядке, в котором они перечислены при задании множества A ).
- Организуйте массив, содержащий 2n целых чисел. Отсортируйте элементы с нечётными индексами по возрастанию.
- Дан массив размера N. Вывести индексы массива в том порядке, в котором соответствующие им элементы образуют возрастающую последовательность.
- Отсортируйте в массиве четные элементы по возрастанию.
- Создайте целочисленный массив, содержащий 2n различных чисел. Отсортируйте первую половину массива по возрастанию, а вторую по убыванию. Выведите на экран, отсортированный таким образом массива.
- Отсортируйте в массиве положительные элементы по возрастанию, отрицательные – по убыванию.
- Массивы А и В заполнены случайными различными числами, причем в В в 2 раза меньше элементов, чем в А. Определите входят ли все элементы В в А.
- Дан массив размера N. Вывести индексы массива в том порядке, в котором соответствующие им элементы образуют убывающую последовательность.
- На координатной прямой дана точка A и множество B из N точек. Найти номер точки из множества B, наиболее близкой от точки A.
- Организуйте массив, содержащий 2n целых чисел. Отсортируйте элементы с нечётными индексами по убыванию.
- Дано линейное множество A из N точек. Найти такую точку из данного множества, сумма расстояний от которой до остальных его точек минимальна, и саму эту сумму.
- Дана точка A и множество B из N точек. Найти номер точки из множества B, наиболее удаленной от точки A.
- Дано линейное множество A из N точек. Найти пару различных точек этого множества с минимальным расстоянием между ними и само это расстояние (точки выводятся в том же порядке, в котором они перечислены при задании множества A ).
- Даны множества A и B, состоящие соответственно из N1 и N2 точек. Найти максимальное расстояние между точками этих множеств и сами точки, расположенные на этом расстоянии.
- В массиве 2 n + 1 различных элементов. Найдите средний элемент массива. Под средним элементом понимают такой, для которого в массиве n элементов больше его и n элементов меньше.
- Даны линейные множества A и B, состоящие соответственно из N1 и N2 точек. Найти минимальное расстояние между точками этих множеств и сами точки, расположенные на этом расстоянии.
- В массиве 3n элементов. Отсортируйте первые n элементов массива по убыванию, последние n элементов по возрастанию.
- Даны два массива А и В. Сформируйте из них массив С, в котором элементы отсортированы по убыванию.
- Дан целочисленный массив А. Отсортируйте по возрастанию те его элементы, которые входят во введенный отрезок .
- Дано линейное множество A из N точек. Найти такую точку из данного множества, которая наиболее близка к значению среднего арифметического элементов массива.
- Дан массив А, состоящий из 2N элементов. Разбейте его на массивы В и С по N элементов каждый так, чтобы каждый элемент В не превосходил каждого элемента С.
- Дан массив А, состоящий из N целых чисел. Сформируйте массив В, состоящий из убывающей последовательности различных элементов массива А.