Сортировка методом простого обмена (метод пузырька) Рекурсивная сортировка.

Презентация:



Advertisements
Похожие презентации
Классификация методов сортировки Сортировка вставкой и сортировка выбором.
Advertisements

Задача Заполнить одномерный целочисленный массив, состоящий из 15 элементов, случайными числами (диапазон задайте сами). Вывести его на экран. Отсортировать.
Сортировка одномерного массива Учитель информатики Александрова Т.П.
Сортировка простым обменом. (методом «пузырька») Рассмотрим идею метода на примере. Отсортируем по возрастанию массив из 5 элементов:
Урок 10. Сортировки 425 а1а2а3а4 Пример: Дан целочисленный массив А из 4-х элементов. 1 шаг. а1>a2? Да 3 b If a[1]>a[2] then begin b:=a[2]; a[2]:=a[1];
К.Ю. Поляков, Е.А. Ерёмин, 2013 Программирование на языке Паскаль § 64. Сортировка 1.
Методы сортировки массива. Сортировкой или упорядочением массива называется расположение его элементов по возрастанию (или убыванию). Если не все элементы.
Обработка массивов Сортировка. Сортировка массивов «…создается впечатление, что можно построить целый курс программирования, выбирая примеры только из.
Сортировка методом слияний Рекурсивная сортировка методом слияний.
Программирование на языке Паскаль Урок Сортировка массивов Рыжикова С. В. Учитель информатики МОУ СОШ 2 г. Волжского Волгоградской обл.
Сортировки массива в Pascal ABC.. Сделаем из мягкой проволоки рамку размером в любое произвольное яблоко, т. о. мы получили ЭТАЛОН.
Массив структура данных, представляющая набор пронумерованных переменных одинакового типа, имеющих общее имя.
Сортировка массивов Что изменилось? ЧТО ДАЛЬШЕ ? Поменяем местами голубой и лиловый прямоугольники.
Алгоритмы сортировки. 2 Сортировка Сортировка – это расстановка элементов массива в заданном порядке (по возрастанию, убыванию, последней цифре, сумме.
Тема: «Сортировка элементов одномерного массива» Автор: Андрюшина А.В. Школа 616 г. Зеленоград 2009 г.
Алгоритмы сортировки Алгоритмы сортировки отличаются друг от друга: - степенью эффективности ( кол-во сравнений); - кол-вом обменов, производимых в процессе.
К.Ю. Поляков, Е.А. Ерёмин, 2013 Программирование на языке Паскаль § 64. Сортировка 1.
Массивы Массив используется для обработки упорядоченного набора величин одного типа, обозначенного одним именем. Доступ к элементам массива осуществляется.
1 Программирование на языке Паскаль Тема 4. Сортировка массивов.
3. Дана прямоугольная матрица, элементами которой являются целые числа. Поменять местами ее строки следующим образом: первую строку с последней, вторую.
Транксрипт:

Сортировка методом простого обмена (метод пузырька) Рекурсивная сортировка

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

Принцип метода пузырька Весь массив просматривается несколько раз, причем при каждом просмотре сравниваются значения двух соседних элементов. Если эти значения следуют не в порядке возрастания, то производится их перестановка. Так происходит до тех пор, пока не будет сделано ни одной перестановки.

Пример процедуры сортировки, использующей метод пузырька Procedure Float (n:integer; var t:mass); Var i,j,h: integer; BEGIN For i:=2 to n do For j:=n downto i do If t[j]<t[j-1] then Begin h:=t[j]; t[j]:=t[j-1]; t[j-1]:=h; End; END;

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

Пример процедуры сортировки, использующей метод простых обменов Procedure Obmen (n:integer; var t: mass); Var i, j, min, ind, h: integer; BEGIN For i:=1 to n-1 do Begin min:=t[i]; ind:=i; For j:=i+1 to n do If t[j] < min then Begin min:=t[j]; ind:=j; End; h:=t[i]; t[i]:=t[ind]; t[ind]:=h; End; END;

Сортировка массива с помощью рекурсии В некотором отрезке массива выбирается центральное (серединное) значение; все элементы из левой части отрезка, превосходящие центральное значение, перемещаются в правую часть, и наоборот. На следующем шаге (для которого используются рекурсивные вызовы этой же процедуры) алгоритм повторяется для обоих частей отрезка.

Процедура, упорядочивающая по возрастанию значения из массива Massiv в диапазоне индексов Left..Right Procedure QuickSort (Left, Right : integer; Var Massiv : Array1); Var i, j, x, y : integer; BEGIN i := Left; j := Right; x := Massiv[(Left+Right) div 2]; Repeat While Massiv[i] x do Dec(j); If i j; If Left<j then QuickSort (Left, j); If i<Right then QuickSort (i, Right); END;

Решение задач Отсортировать массив по возрастанию, используя процедуру Swap, которая меняет местами 2 элемента. Составьте алгоритм, упорядочивающий элементы массива, стоящие на нечетных местах, в возрастающем порядке, а на четных - в убывающем. Дана вещественная матрица размером 7x4. Переставляя ее строки и столбцы, добиться того, чтобы наибольший элемент (один из них) оказался в левом верхнем углу. Дан упорядоченный целочисленный массив. Сформировать второй массив всех таких различных значений, которые в первом массиве встречаются по два и более раза.