|
алгоритм сортировки (упорядочивания) элементов вектора или матрицы ⇐ ПредыдущаяСтр 2 из 2
Сортировка означает перестановку элементов вектора или матрицы в определенном порядке (по возрастанию или по убыванию) в соответствии с их значениями. Рассмотрим алгоритм сортировки (упорядочивания) элементов вектора, когда значение каждого последующего элемента вектора больше предыдущего. Например, пусть исходный вектор X ={ }6=(3, 4, 2, -1, 6, 0), тогда в результате сортировки получим вектор X =(-1, 0, 2, 3, 4, 6). Существуют различные способы решения данной задачи. Рассмотрим один из них. Процедура сортировки элементов вектора X по возрастанию их значенийследующая.
Первый шаг Среди N-1 элементов вектора X (за исключением ) произведем поиск минимального элемента вектора и поменяем его местами с первым элементом, если значение < . В результате выполнения первого шага сортировки получим следующий вектор X =(-1, 4, 2, 3, 6, 0).
Второй шаг Среди N-2 элементов вектора X (за исключением , ) произведем поиск минимального элемента вектора и поменяем его местами со вторым элементом, если значение < . В результате выполнения второго шага сортировки получим вектор X =(-1, 0, 2, 3, 6, 4). Очевидно, после выполнения N-1 шага (в нашем примере после 5 шагов) получим окончательный упорядоченный вектор X =(-1, 0, 2, 3, 4, 6). Алгоритм упорядочивания по возрастанию элементов вектора показан на рис. 22. Данный алгоритм пригоден для упорядочивания элементов вектора по убыванию с очевидной заменой знака " > " на знак " < " в блоке проверки условия (рис. 22). Рассмотрим алгоритм сортировки элементов матрицы. Дана матрица A ={ }P*N . Необходимо упорядочить элементы столбцов матрицы А в порядке убывания. Алгоритм сортировки элементов матрицы для этого случая приведен на рис. 23.
Вычисление полинома по схеме горнера Дан полином PN (x)порядка N. y = PN (x)= (18) Порядок N, значение аргумента и коэффициенты () известны. Поставим задачу разработки эффективной схемы вычисления полинома y = PN (). Представим уравнение (18) в следующем виде: (19) Очевидно, уравнение Горнера (19) предполагает меньший объем арифметических операций, чем исходное уравнение (18). Рассмотрим следующую процедуру вычисления полинома с использованием рекуррентной формулы (рис. 24): , для . (20) Действительно, для для (21) ...................... для = PN ()
Рис.24. Алгоритм вычисления полинома по схеме Горнера.
ВЫЧИСЛЕНИЕ СУММЫ ЧЛЕНОВ РЯДА Вычисление суммы членов ряда рассмотрим на примере тригонометрической функции . Известно, что данная функция может быть представлена разложением в следующий ряд:
, (22) где - общий член ряда.
Очевидно, сумма членов ряда S может быть вычислена только при конечном (заданном) числе членов ряда, предположим NZ = 10, или условием окончания вычислений может быть неравенство вида , где достаточно малая величина, предположим или . (Известно, что в сходящихся рядах , т.e. значение модуля каждого последующего члена ряда меньше предыдущего). Приведем рекуррентную формулу для вычисления значения текущего члена ряда: , где - рекуррентный множитель. (23) Для нашего примера (уравнение 22) M= = . (24) Покажем схему алгоритма вычисления суммы членов ряда на рис. 25.
Рис.25 СОДЕРЖАНИЕ введение..................... Ошибка! Закладка не определена. АЛГОРИТМИЗАЦИЯ..... Ошибка! Закладка не определена. 1. ВЫЧИСЛЕНИЕ СУММЫ (СУММИРОВАНИЕ) ЭЛЕМЕНТОВ ВЕКТОРА 6 2. ВЫЧИСЛЕНИЕ ПРОИЗВЕДЕНИЯ ЭЛЕМЕНТОВ ВЕКТОРА........... 7 3. ВЫЧИСЛЕНИЕ ПРОИЗВЕДЕНИЯ ДВУХ ВЕКТОРОВ.................... 10 4. СУММИРОВАНИЕ (ВЫЧИТАНИЕ) МАТРИЦ................................. 12 5. ВЫЧИСЛЕНИЕ ПРОИЗВЕДЕНИЯ МАТРИЦ.................................... 13 6. ВЫЧИСЛЕНИЕ ПРОИЗВЕДЕНИЯ МАТРИЦЫ НА ВЕКТОР.......... 14 7. ВЫЧИСЛЕНИЕ ЕДИНИЧНОЙ МАТРИЦЫ....................................... 14 8. ТРАНСПОНИРОВАНИЕ МАТРИЦЫ................................................. 15 9. ИНВЕРТИРОВАНИЕ ЭЛЕМЕНТОВ ВЕКТОРА................................ 16 10. АЛГОРИТМ ПОИСКА МАКСИМАЛЬНОГО (ИЛИ МИНИМАЛЬ-НОГО) ЭЛЕМЕНТА ВЕКТОРА...................................................................... 17 11. АЛГОРИТМ СОРТИРОВКИ (УПОРЯДОЧИВАНИЯ) ЭЛЕМЕНТОВ ВЕКТОРА ИЛИ МАТРИЦЫ.......................................................................................... 18 12. ВЫЧИСЛЕНИЕ ПОЛИНОМА ПО СХЕМЕ ГОРНЕРА.................... 20 13. ВЫЧИСЛЕНИЕ СУММЫ ЧЛЕНОВ РЯДА Ошибка! Закладка не определена. Что вызывает тренды на фондовых и товарных рынках Объяснение теории грузового поезда Первые 17 лет моих рыночных исследований сводились к попыткам вычислить, когда этот... ЧТО ПРОИСХОДИТ, КОГДА МЫ ССОРИМСЯ Не понимая различий, существующих между мужчинами и женщинами, очень легко довести дело до ссоры... Система охраняемых территорий в США Изучение особо охраняемых природных территорий(ООПТ) США представляет особый интерес по многим причинам... Конфликты в семейной жизни. Как это изменить? Редкий брак и взаимоотношения существуют без конфликтов и напряженности. Через это проходят все... Не нашли то, что искали? Воспользуйтесь поиском гугл на сайте:
|