Zadania_LR11_Sort_massiv_11
.docРабота 10. Сортировка одномерных массивов
Цель работы: изучение основных приемов алгоритмизации и программирования задач сортировки массивов, тестирования и отладки таких программ.
Методические указания:
1. При удалении из массива К элементов размер массива уменьшается на К, при вставке в массив М элементов – размер массива увеличивается на М.
2. Циклы просмотра элементов массива можно задавать от начала массива или от конца. Следите за границами индексации элементов xi , i = 0, 1, … , n-1 .
3. Если выполнить сортировку массива без использования другого (рабочего) массива не удаётся, используйте рабочий массив.
Для всех задач дан массив Х размером N.
-
Расположить в порядке возрастания элементы массива до первого нулевого элемента.
-
В массиве целых чисел переставить в конец элементы, кратные заданному числу.
-
Из массива удалить положительные элементы, следующие после минимального элемента.
-
Удалить из массива смежные повторяющиеся элементы, оставив только один из каждой группы.*
-
Переставить в начало массива первые К «+»-ых элементов.
-
Найти сумму S первой группы смежных равных элементов (группа – два или более элементов) и вставить S в массив после правого элемента этой группы.
-
Все числа в массиве, равные максимальному числу, переставить после первого максимального.
-
Удалить из массива последние К положительных элементов.
-
Сформировать другой массив из «-»-х элементов исходного массива и расположить их в порядке возрастания, (усложнение: из исходного массива «-»-е элементы удалить). ~
-
Сформировать другой массив из «+»-х элементов исходного массива, которые располагаются после «-»-го элемента, и расположить их в порядке убывания. ~
-
Нулевые элементы переставить в начало массива. Усложнение: остальные расположить в порядке возрастания. *
-
Из массива удалить самую длинную группу смежных «+»-ых чисел. **
-
Все «+»-е числа в массиве переставить перед последним «+»-ым числом.
-
Сформировать другой массив из «+»-х элементов исходного массива, располагающихся после минимального элемента. ~
-
Сформировать другой массив Y из «–»-х элементов исходного массива X и переставить минимальный элемент массива Y на первое место, не нарушая порядок остальных элементов. ~
-
Расположить в порядке возрастания элементы массива до К-го отрицательного элемента. ~
-
Последнюю группу (2 или более элемента) положительных элементов заменить их суммой.
-
Отрицательные элементы переставить в конец массива и расположить их в порядке возрастания.
-
Из массива удалить все элементы, равные минимальному элементу в массиве.
-
Удалить из массива «-»-е элементы с четными индексами в исходном массиве.
-
Удалить из массива элементы, кратные заданному числу.
-
Расположить в порядке возрастания М элементов массива после К-го элемента, М и К заданы.
-
Сформировать другой массив из элементов исходного массива, величины которых находятся в заданных пределах от А до В, и вставить в середину полученного массива среднее значение элементов этого массива.
-
Удалить из массива первую двойку смежных чисел, произведение которых равно К-му числу, К задается.
-
Из массива удалить тройку элементов xi-k , xi и xi+k , k задается.
-
Поменять местами отрицательные элементы массива с положительными. Замену остановить, если «+»-е или «–»-е элементы закончатся. Оставшиеся элементы свое место не изменяют. *
-
Расположить элементы первой половины массива в порядке возрастания, а второй половины массива в порядке убывания.
-
Из массива удалить пару элементов xi и xi+k c максимальным произведением, k задается. * (Проще: первую такую пару).
-
Удалить из массива элементы, следующие по убыванию от максимального элемента. * Пример: из массива 2 1 3 8 5 6 4 5 2 0, 5 4 2 0 – удалить!
-
Первую цепочку «+»-ых чисел переставить в конец массива (цепочка – два и более числа). *
-
Сформировать другой массив из «–»-х элементов исходного массива и удалить из полученного массива М-ый элемент, М задается.
-
Удалить из массива каждый элемент xi, располагающийся перед двумя «+»-ми элементами в массиве, тройки чисел “xi «+»«+»” не пересекаются.
-
Удалить из исходного массива первую цепочку чередующихся по знаку элементов (более 2-х элементов) и записать их в другой массив.
-
Последнюю группу (2 и более элемента) отрицательных элементов массива заменить их суммой.
-
Расположить в порядке возрастания первую группу смежных отрицательных элементов массива.
-
Удалить из массива элементы, соседние с первым минимальным элементом.
-
Переставить первую тройку «-»-ых элементов массива после максимального элемента массива.
-
Расположить элементы массива целых чисел в порядке чередования четный/нечетный. *
-
Первую группу положительных элементов заменить средним значением.
-
Удалить из массива « – »-элементы, располагающиеся между первым и вторым «+»-ми элементами.
-
Сформировать массив Y из элементов, следующих по возрастанию относительно первого элемента: в массиве Y элементы расположатся по возрастанию. ~
-
Сформировать массив из смежных элементов, разность между которыми больше числа А. ~
-
Первые М элементов поставить после максимального элемента хmax, если хmax не попадает в первые М элементов. *
-
Переставить в начало массива элементы, которые меньше заданного числа В. ~
-
Удалить элемент, предшествующий максимальному элементу. ~
-
Удалить первый «–»-й элемент после первого «+»-го элемента.
-
Удалить К 0-ых элементов. ~
-
Первую группу смежных положительных элементов заменить их средним значением, размер массива уменьшится за счет сдвига оставшихся элементов.
-
Переставить первую пару смежных «+»-ых элементов в начало массива.
-
Удалить из массива первую цепочку смежных «–»-ых элементов.
-
Отрицательные элементы переставить в конец массива.
-
Отрицательные элементы удалить из исходного массива и перенести их в другой массив.
-
Все «+»-е элементы с двумя смежными «–»-ми элементами поменять местами с левым смежным элементом своей тройки. ~
-
Из массива удалить все элементы, равные минимальному элементу в массиве.
-
Переставить первые К элементов в конец массива.
-
Добавить в середину массива сумму «+»-ых элементов . ~
-
Удалить первые К положительных элементов массива. ~
-
Удалить первую тройку смежных элементов с максимальной суммой.
-
Последние М положительных элементов массива расположить в порядке убывания. Позиции «+»-х элементов в массиве сохраняются по отношению к позициям «–»-х элементов. **
-
Удалить из массива элементы, величины которых находятся в заданных пределах (А, В).
-
Сформировать массив Y из элементов, следующих по возрастанию от мини-мального элемента: в массиве Y элементы расположатся по возрастанию. ~
-
Переставить в начало массива элементы, кратные заданному числу М.
-
Нулевые элементы переставить в конец массива.
-
Элементы первой половины массива упорядочить по убыванию. Усложнение: если первые К чисел упорядочены по убыванию.
-
В массиве поменять местами первую группу «–»-ых чисел и последнюю группу «+»-ых чисел. Группа состоит из 2-х и более чисел с граничными числами другого знака. **