Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Задача № 5






Написать программу-функцию для задачи своего варианта

Варианты

1. Заданы два вектора с различным количеством элементов и натуральное число k. Объединить их в матрицу, включив второй вектор между k-м и (k+1)-м элементами первого, при этом, не используя дополнительную матрицу.

2. Дана последовательность чисел a1, а2,..., аn. Требуется переставить элементы так, чтобы они были расположены по возрастанию. Для этого в массиве, начиная с первого, выбирается наибольший элемент и ставится на первое место, а первый — на место наибольшего. Затем, начиная со второго, эта процедура повторяется. Написать алгоритм сортировки выбором.

3.Дана последовательность чисел a1, а2,..., аn. Требуется переставить элементы так, чтобы они были расположены по убыванию. Для этого в массиве, начиная с первого, выбирается наибольший элемент и ставится на первое место, а первый — на место наибольшего. Затем, начиная со второго, эта процедура повторяется. Написать алгоритм сортировки выбором.

4.Дана последовательность чисел a1, а2,..., аn. Требуется переставить числа в порядке возрастания. Для этого сравниваются два соседних числа аi и ai+1. Если аi > ai+1, то делается перестановка. Так продолжается до тех пор, пока все элементы не станут расположенными в порядке возрастания. Составить алгоритм сортировки, подсчитывая при этом количества перестановок.

5.Дана последовательность чисел a1, а2,..., аn. Требуется переставить числа в порядке возрастания. Делается это следующим образом. Пусть a1, а2,..., аi — упорядоченная последовательность, т.е. a1 ≤ а2 ≤...≤ аi. Берется следующее число аi+1 и вставляется в последовательность так, чтобы новая последовательность была тоже возрастающей. Процесс производится до тех пор, пока все элементы от i +1 до n не будут перебраны. Примечание. Место помещения очередного элемента в отсортированную часть производить с помощью двоичного поиска. Двоичный поиск оформить в виде отдельной функции.

6.Дан массив n действительных чисел. Требуется упорядочить его по возрастанию. Делается это следующим образом: сравниваются два соседних элемента аi и ai+1. Если аi < ai+1, то продвигаются на один элемент вперед. Если аi > ai+1 то производится перестановка и сдвигаются на один элемент назад. Составить алгоритм этой сортировки.

7. Пусть даны две неубывающие последовательности действительных чисел a1 ≤ а2 ≤...≤ аn и b1 ≤ b2 ≤...≤ bm. Требуется указать те места, на которые нужно вставлять элементы последовательности b1 ≤ b2 ≤...≤ bm в первую последовательность так, чтобы новая последовательность оставалась возрастающей.

8. Даны дроби p1/q1, p2/q2,..., pn/qni, qi — натуральные). Составить блок-схему, которая приводит эти дроби к общему знаменателю и упорядочивает их в порядке возрастания.

9.Упорядочить массив a1, а2,..., аn по неубыванию с помощью алгоритма сортировки слияниями:

1) каждая пара соседних элементов сливается в одну группу из двух элементов (последняя группа может состоять из одного элемента);

2) каждая пара соседних двухэлементных групп сливается в одну четырехэлементную группу и т.д. При каждом слиянии новая укрупненная группа упорядочивается.

10.Выходной массив заполняется значениями —1. Затем для каждого элемента определяется его место в выходном массиве путем подсчета количества элементов строго меньших данного. Естественно, что все одинаковые элементы попадают на одну позицию, за которой следует ряд значений —1. После этого оставшиеся в выходном массиве позиции со значением —1 заполняются копией предыдущего значения.

11.Из массива путем однократного просмотра выбирается последовательность элементов, расположенных в порядке возрастания, переносится в выходной массив и заменяется во входном на —1. Затем оставшиеся элементы включаются в полученную упорядоченную последовательность методом «погружения», когда очередной элемент путем ряда обменов «погружается» до требуемой позиции в уже упорядоченную часть массива.

12. Дана последовательность квадратов натуральных чисел, расположенных в произвольном порядке: 1 49 16 64 9 121 25 81 36 4… Отсортировать ее в порядке возрастания методом быстрой сортировки.

13. Дана последовательность квадратов натуральных чисел, расположенных в произвольном порядке: 1 49 16 64 9 121 25 81 36 4… Отсортировать ее в порядке возрастания методом пузырька и цифру, стоящую на n-ом месте (n< =30000).

14. Заданы два одномерных массива с различным количеством элементов, при этом элементы первого массива расположены в порядке возрастания, а второго – в порядке убывания, и натуральное число k. Объединить их в один массив, включив второй массив между k-м и (k+1)-м элементами первого, при этом, не используя дополнительный массив.

15. Дана последовательность чисел a1, а2,..., аn, содержащая положительные и нулевые элементы, расположенные в произвольном порядке. Требуется удалить нулевые элементы так, чтобы оставшиеся были расположены по возрастанию. Дополнительный массив не заводить.

16.Дана последовательность чисел a1, а2,..., аn, содержащая положительные и отрицательные элементы. Требуется удалить некоторые элементы так, чтобы оставшиеся были расположены по убыванию. Дополнительный массив не заводить.

17.Дана последовательность чисел a1, а2,..., аn. Требуется переставить числа в порядке убывания. Для этого сравниваются два соседних числа аi и ai+1. Если аi > ai+1, то делается перестановка. Так продолжается до тех пор, пока все элементы не станут расположенными в порядке возрастания. Составить алгоритм сортировки, подсчитывая при этом количества перестановок.

18.Даны дроби p1/q1, p2/q2,..., pn/qni, qi — натуральные). Составить блок-схему, которая приводит эти дроби к десятичной форме записи с точностью 10-4 и упорядочивает их в порядке убывания.

19. Заданы два одномерных массива с различным количеством элементов. Объединить их в один массив, включив второй массив между 2 наименьшими элементами первого, при этом элементы результирующего массива должны оказаться расположенными в возрастающем порядке. Не использовать дополнительный массив.

20. Даны две последовательности a1 , а2... аn и b1 , b2 ... bn. Объединить их в один массив, включив второй массив между min {a1 , а2... аn } и max {a1 , а2... аn }элементами первого, при этом элементы результирующего массива должны оказаться расположенными в возрастающем порядке. Дополнительный массив не использовать.






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.