Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Сортировка массивов




Случайные числа

В системе генерации случайных чисел используются процедура Randomize и функция Random.

Процедура Randomize инициализирует генератор случайных чисел. Синтаксис вызова имеет следующий вид:

Randomize;

Эта процедура читает значение системных часов и применяет его в качестве стартового значения, задающего всю дальнейшую последовательность случайных чисел. Эта процедура позволяет при последовательных запусках программы получать различные случайные последовательности. Таким образом происходит переустановка базы генерации случайных чисел.

Строго говоря, последовательность чисел является не случайной, а псевдослучайной, так как, начав с того же стартового значения, можно повторить всю последовательность случайных чисел.

Для получения псевдослучайных чисел используется функция Random. Синтаксис ее вызова имеет следующий вид:

случайное_число:= Random(верхняя_граница);

Этот оператор присвативает переменной случайное_число равномерно распределенное случайное значение типа Integer, находящееся в диапазоне от нуля до верхняя_граница, т.е. [0, верхняя_граница).

Параметр верхняя_граница необязателен. В этом случае генератор полагает, что верхняя_граница равна 1, т.е. функция возвращает случайное вещественное число из промежутка [0, 1).

Случайные целые числа, принадлежащие отрезку [ а, b ], вычисляют по формуле а + Random(ba + 1).

Замечание. Не комбинируйте вызов процедуры Randomize в циклах вместе с обращением к функции Random. Обычно процедура Randomize вызывается только один раз до вызова функции Random (т.е. до цикла).

Сортировка массива – это перерасположение элементов массива в заданном порядке.

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

Для оценки быстродействия алгоритмов различных методов сортировки, как правило, используют два показателя:

- количество присваиваний;

- количество сравнений.

Все методы сортировки можно разделить на две большие группы:'

- прямые методы сортировки;

- улучшенные методы сортировки.

Прямые методы сортировки по принципу, лежащему в основе метода, в свою очередь разделяются на три подгруппы:

1) сортировка вставкой (включением);

2) сортировка выбором (выделением);

3) сортировка обменом ("пузырьковая" сортировка).

Улучшенные методы сортировки основываются на тех же принципах, что и прямые, но используют некоторые оригинальные идеи для ускорения процесса сортировки. Прямые методы на практике используются довольно редко, так как имеют относительно низкое быстродействие. Однако они хорошо показывают суть основанных на них улучшенных методов. Кроме того, в некоторых случаях (как правило, при небольшой длине массива и/или особом исходном расположении элементов массива) некоторые из прямых методов могут даже превзойти улучшенные методы.




Поделиться с друзьями:


Дата добавления: 2015-06-28; Просмотров: 290; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.012 сек.