Курсовая: Описания методов - текст курсовой. Скачать бесплатно.
Банк рефератов, курсовых и дипломных работ. Много и бесплатно. # | Правила оформления работ | Добавить в избранное
 
 
   
Меню Меню Меню Меню Меню
   
Napishem.com Napishem.com Napishem.com

Курсовая

Описания методов

Банк рефератов / Информатика, информационные технологии

Рубрики  Рубрики реферат банка

закрыть
Категория: Курсовая работа
Язык курсовой: Русский
Дата добавления:   
 
Скачать
Архив Zip, 262 kb, скачать бесплатно
Заказать
Узнать стоимость написания уникальной курсовой работы

Узнайте стоимость написания уникальной работы

оглавление ВВЕДЕНИЕ 2 ГЛАВА 1. ТЕОРЕТИКО-МЕТОДОЛОГИЧЕСКИЕ АСПЕКТЫ ПРОБЛЕМЫ методов сортировки данных в языке Pascal 3 1.1 Понятие сортировки 3 1.2 Критерии оценки алгоритмов сортировки 3 1.3 Постановка задачи сортировки и методы её решения. 3 1.4 Сортировка пузырьковым методом 3 1.5 Сортировка выбором элемента 3 1.6 Сортировка вставкой 3 1.7 Усовершенствованные алгоритмы сортировки. Сортировка Шелла 3 1.8 Метод разделения (алгоритм "быстрой" сортировки, метод Хоара) 3 1.9 Сравнительный анализ методов сортировки 3 ГЛАВА 2. Использование методов сортировки данных на примере решения практических задач 3 2.1 Задача №1 3 2.2 Задача №2 3 2.3 Задача №3 3 Заключение 3 Список использованных источников 3 ВВЕДЕНИЕ Необходимость отсортировать какие-либо величины возникает в программировании очень часто. К примеру, входные данные подаются "вперемешку", а нашей программе удобнее обрабатывать упорядоченную последовательность. Существуют ситуации, когда предварительная сортировка данных позволяет сократить содержательную часть алгоритма в разы, а время его работы - в десятки раз. Однако верно и обратное. Сколь бы хорошим и эффективным ни был выбранный вами алгоритм, но если в качестве подзадачи он использует "плохую" сортировку, то вся работа по его оптимизации оказывается бесполезной. Неудачно реализованная сортировка входных данных способна заметно понизить эффективность алгоритма в целом. В данной курсовой работе наша речь будет идти об эффективности различных методов сортировки данных в языке Pascal . Объект и предмет исследования – методы сортировки данных, используемые в языке Pascal. Целью данного исследования является анализ эффективности различных методов сортировки данных в языке Pascal . Вообще говоря, методы сортировки делятся на три типа: 1. методы сортировки, которые сортируют без использования дополнительной памяти, за исключением, возможно, небольшого стека и/или массива; 2. методы, которые используют для сортировки связанные списки и поэтому используют N дополнительных указателей хранящихся в памяти; 3. и методы, которые нуждаются в дополнительной памяти для хранения копии сортируемого файла. Мною были рассмотрены преимущества и недостатки таких методов сортировки, как метод обмена, вставок, выбора, методы Шелла и Хоара. Основными критериями эффективности алгоритмов сортировки мною были выбраны время его работы и экономное использование памяти. И первые три алгоритма, которые мы рассмотрим, для сортировки N элементов имеют время работы пропорциональное N 2 , в то время как более сложные алгоритмы используют время пропорциональное N log N . Кроме времени и объема памяти, критерии эффективности рассмотренных в работе алгоритмов могут включать следующие параметры: 1. количество шагов алгоритма, необходимых для упорядочения; 2. количество сравнений элементов; 3. количество перестановок, выполняемых при сортировке. Само собой разумеется, что, чем выше показатель, тем «хуже» алгоритм сортировки. ГЛАВА 1. ТЕОРЕТИКО-МЕТОДОЛОГИЧЕСКИЕ АСПЕКТЫ ПРОБЛЕМЫ методов сортировки данных в языке Pascal 1.1 Понятие сортировки Алгоритмы сортировки информации образуют основу для огромного большинства прикладных программ. Сортировка информации - это одна из стандартных функций, возникающих в процессе решения задач. Сортировка данных это процесс изменения порядка расположения элементов в некоторых упорядоченных структурах данных таким образом, чтобы обеспечить возрастание или убывание числового значения элемента данных или определенного числового параметра, связанного с каждым элементом данных (ключа), при переходе от предыдущего элемента к последующему. То есть для любой пары чисел определены отношения "больше" или "меньше". Для переменных символьного типа понятия "возрастание" и "убывание" относятся к значениям машинного кода, используемого для представления символов в памяти компьютера. Так как все буквенные символы располагаются в таблице кодов по алфавиту, то сортировка слов текста всегда приводит к их упорядочению в алфавитной последовательности. Сортировка данных используется для эффективного решения других задач при программировании. Для упорядоченной совокупности данных быстро и легко решается задача, как поиск и отбор информации по заданному условию. Существует много алгоритмов, обеспечивающих решение задачи сортировки. Одни из них обладают низким быстродействием, другие обладают очень высокой эффективностью и практически используются в современных компьютерных системах. 1.2 Критерии оценки алгоритмов сортировки Для каждого метода сортировки имеется много алгоритмов. Каждый алгоритм имеет свои достоинства, но в целом оценка алгоритма сортировки зависит от ответов, которые будут получены на следующие вопросы: 1) с какой средней скоростью этот алгоритм сортирует информацию?; 2) какова скорость для лучшего случая и для худшего случая?; 3) поведение алгоритма является естественным или является не естественным?; 4) выполняется ли перестановка элементов для одинаковых ключей? Для конкретного алгоритма большое значение имеет скорость сортировки. Скорость, с которой массив может быть упорядочен, прямо зависит от числа сравнений и числа необходимых операций обмена, причем операции обмена занимают большое время. Время работы алгоритма для лучшего и худшего случаев важно учитывать, когда ожидается их частое появление. Часто сортировка имеет хорошую среднюю скорость, но очень плохую скорость для худшего случая, и наоборот. Считается поведение алгоритма сортировки естественным, если время сортировки наименьшее при упорядоченном списке элементов, время сортировки увеличивается при менее упорядоченном списке элементов и время сортировки становится наихудшим, когда список элементов упорядочен в обратном порядке. Время сортировки зависит от числа операций сравнения и операций обмена. Для того чтобы понять важность перегруппировки элементов с одинаковыми ключами сортировки, представим базу данных, которая упорядочена по основному ключу и дополнительному ключу. Например, список почтовых отправлений с почтовым индексом в качестве основного ключа и фамилией в качестве дополнительного ключа в рамках одного почтового индекса. Когда новый адрес добавляется в список и список вновь сортируется, вам не требуется перестановка дополнительных ключей. Для обеспечения этого сортировка не должна выполнять операции обмена для основных ключей с одинаковыми значениями. 1.3 Постановка задачи сортировки и методы её решения. Задачу сортировки данных можно сформулировать для информационной совокупности самой различной природы - для числовой информации, для слов и символов текста. Для этого, требуется определить понятие порядка для элементов массива, определить понятия "больше" и "меньше" для каждой пары элементов. Отсортировать последовательность чисел можно точно таким же способом, как и последовательность строк текста. Необходимо только определить какой из элементов пары "больше" другого. Более важным для выбора алгоритма является местоположение данных - в оперативной памяти компьютера или на внешнем устройстве. Здесь играет роль различие в основных критериях качества - для данных в оперативной памяти основными положительными свойствами метода являются быстродействие и потребности в дополнительной памяти. Для дисковых файлов очень важным показателем является количество обращений к устройству для выполнения операций ввода-вывода - оно должно быть минимальным. Различают два вида сортировки данных: - сортировка данных, расположенных в оперативной памяти компьютера (внутренняя сортировка); - сортировка данных, расположенных на внешних запоминающих устройствах (внешняя сортировка). Сформулируем постановку задачи сортировки данных для внутренней сортировки одномерного числового массива по возрастанию. Имеется одномерный массив чисел, состоящий из n элементов: X[n]. Переставить элементы массива так, чтобы их значения располагались в порядке возрастания. Другими словами, для любой пары элементов X[i] и X[i+1] выполняется неравенство вида: X[i] <= X[i+1]. В этой задаче однозначно определяется структура данных для внутренней сортировки (одномерный массив) и порядок упорядочения элементов. Ключом для определения порядка элементов является само числовое значение элемента массива. Результатом решения задачи должна быть программа сортировки массива одним или несколькими методами. При разработке программы можно воспользоваться различными алгоритмами. Наиболее известными являются следующие: - метод сортировки обменами ("пузырьковая" сортировка); - метод сортировки вставками; - метод сортировки выбором элемента; - метод разделения (алгоритм "быстрой" сортировки метод Хоара); - метод Шелла. 1.4 Сортировка пузырьковым методом Наиболее известной (и наиболее "бесславной") является сортировка пузырьковым методом. Ее популярность объясняется запоминающимся названием и простотой алгоритма. Однако, эта сортировка является одной из самых худших среди всех когда-либо придуманных сортировок. Сортировка пузырьковым методом использует метод обменной сортировки. Она основана на выполнении в цикле операций сравнения и при необходимости обмена соседних элементов. Ее название происходит из-за подобия процессу движения пузырьков в резервуаре с водой, когда каждый пузырек находит свой собственный уровень. Ниже показана самая простая форма программы сортировки методом пузырька: сортировка пузырьковым методом procedure Bubble(var item: DataArray; count:integer); var i,j : integer; x : DataItem; begin for i := 2 to count do begin for j := count downto i do if item[j-1]>item[j] then begin x := item[j-1]; item[j-1] := item[j]; item[j] := x; end; end; end; конец сортировки пузырьковым методом В этом случае данное "item" является массивом элементов "DataItem", который сортируется, а данное "count" содержит число элементов в массиве. Сортировка пузырьковым методом имеет два цикла. Поскольку число элементов массива задается переменной "count", внешний цикл вызывает просмотр массива count - 1 раз. Это обеспечивает нахождение каждого элемента в своей позиций после завершения процедуры. Внутренний цикл предназначен для фактического выполнения операций сравнения и обмена. Для иллюстрации работы сортировки пузырьковым методом ниже даны результаты каждого этапа сортировки массива "dcab": исходное положение: d c a b; первый проход: a d c b; второй проход: a b d c; третий проход: a b c d. При анализе всякой сортировки определяется число операций сравнения и обмена, выполняемых в лучшем, среднем и худшем случаях. Для сортировки пузырьковым методом число сравнений остается неизменным, поскольку два цикла всегда выполняются заданное число раз вне зависимости от упорядоченности исходного массива. Это означает, что при сортировке пузырьковым методом всегда выполняется 1/ 2 (n2-n) операций сравнения, где "n" задает число сортируемых элементов массива. Эта формула выводится на том основании, что внешний цикл сортировки пузырьковым методом выполняется n-1 раз, а внутренний цикл выполняется n/2 раз. Их перемножение даст указанную формулу. Число операций обмена будет нулевым для наилучшего случая, когда исходный массив уже является отсортированным. Число операций обмена для среднего случая будет равно 3/4 (n2-n), а для наихудшего случая будет равно 3/2 (n2-n) раз. Можно заметить, что по мере ухудшения упорядоченности исходного массива число неупорядоченных элементов приближается к числу сравнений (каждый неупорядоченный элемент требует три операции обмена). Сортировку пузырьковым методом называют квадратичным алгоритмом, поскольку время его выполнения пропорционально квадрату числа сортируемых элементов. Сортировка большого числа элементов пузырьковым методом потребует очень много времени, т.к. время выполнения сортировки находится в квадратичной зависимости от числа элементов массива. Например, если не учитывать время операций обмена, выполняемых для перестановки неупорядоченных элементов, то тогда при выполнении одной операции сравнения в течение 0,001 секунд сортировка десяти элементов займет 0,05 секунд, сортировка ста элементов займет 5 секунд, а сортировка 1000 элементов займет 500 секунд. Сортировка 100 000 элементов (такой размер имеет небольшой телефонный справочник) потребовала бы 5 000 000 секунд или около 1400 часов (т.е. два месяца непрерывной работы)! Сортировку пузырьковым методом можно в некоторой степени улучшить и тем самым немного улучшить ее временные характеристики. Можно, например, заметить, что сортировка пузырьковым методом обладает одной особенностью: расположенный не на своем месте в конце массива элемент (например, элемент "а" в массиве "dcab") достигает своего места за один проход, а элемент, расположенный в начале массива (например, элемент "d"), очень медленно достигает своего места. Необязательно все просмотры делать в одном направлении. Вместо этого всякий последующий просмотр можно делать в противоположном направлении. В этом случае сильно удаленные от своего места элементы будут быстро перемещаться в соответствующее место. Ниже показана улучшенная версия сортировки пузырьковым методом, получившая название "челночной сортировки" из-за соответствующего характера движений по массиву. Хотя эта сортировка является улучшением пузырьковым методом, ее нельзя рекомендовать для использования, поскольку время выполнения по-прежнему зависит квадратично от числа элементов. Число сравнений не изменяется, а число обменов уменьшается лишь на незначительную величину. челночная сортировка является улучшенной версией сортировки пузырьковым методом procedure Shaker(var item: DataArray; count:integer); var j, k, l, r: integer; x: DataItem; begin l := 2; r := count; k := count; repeat for j := r downto l do if item[j-1] then begin обмен x := item[j-1]; item[j-1] := item[j]; item[j] := x; k := j; end; l := k+1; for j := l to r do if item[j-1]>item[j] then begin обмен x := item[j-1]; item[j-1] := item[j]; item[j] := x; k := j; end; r := k-1; until l>r end; конец челночной сортировки Ее нельзя рекомендовать для использования, поскольку время выполнения по-прежнему зависит квадратично от числа элементов. Число сравнений не изменяется, а число обменов уменьшается лишь на незначительную величину. 1.5 Сортировка выбором элемента При сортировке выбором выбирается элемент с наименьшим значением и делается его обмен с первым элементом массива. Затем находится элемент с наименьшим значением из оставшихся n-1 элементов и делается его обмен со вторым элементом и т.д. до обмена двух последних элементов. Например, если сортировку выбором применить для массива "bdac", то будут получены следующие проходы: исходное положение: b d a c; первый проход: a d b c; второй проход: a b b c; третий проход: a b c d. К сожалению как и в сортировке пузырьковым методом внешний цикл выполняется n-1 раз, а внутренний цикл выполняется n/2 раз. Это значит, что число сравнений для сортировки выбором равно 1/2 (n2-n) и эта сортировка будет выполняться слишком медленно для большого числа элементов. Число операций обмена в наилучшем случае равно 3(n-1), а в худшем случае равно n2/4+3(n-1). В лучшем случае (когда исходный массив уже упорядочен) потребуется поменять местами только n-1элементов,а каждая операция обмена требует три операции пересылки. сортировка выбором procedure Selekt(var item: DataArray; count:integer); var i, j, k: integer; x: DataItem; begin for i := i to count-1 do begin k := i; x := item[i]; for j := i+1 to count do найти элемент с наименьшим значением if item[j]0) do begin item[j+1] := item[j]; j := j-1; end; item[j+1] := x; end ; end; конец сортировки вставкой В отличие от сортировки пузырьковым методом и сортировки выбором число операций сравнения для сортировки вставкой зависит от исходной упорядоченности массива элементов. Если исходный массив уже упорядочен, то число операций сравнения равно n-1. Если массив упорядочен в обратном порядке, то число операций сравнения равно 1/2 (n2 +n)-1,давая в среднем значение 1/4 (n2+n-2). Число операций обмена будет следующим: для лучшего случая: 2 (n-1); в среднем: 1/4 (n2+9n-10); для худшего случая: 1/2 (n2+3n-4). Таким образом, число операций обмена для худшего случая будет столь же большим, как и для сортировок пузырьковым методом и сортировок выбором. Число операций обмена для среднего случая будет лишь на немного меньше. Однако сортировка вставкой имеет два преимущества. Во-первых, она обладает естественным поведением, т.е. она выполняется быстрее для упорядоченного массива и дольше всего выполняется, когда массив упорядочен в обратном направлении. Это делает сортировку вставкой полезной для упорядочения почти отсортированных массивов. Во-вторых, элементы с одинаковыми ключами не переставляются: если список элементов сортируется с использованием двух ключей, то после завершения сортировки вставкой он по-прежнему будет упорядочен по двум ключам. Несмотря на то, что число сравнений может быть довольно небольшим для определенных наборов данных, постоянные сдвиги массива требуют выполнения большого числа операций пересылок. Однако, сортировка вставкой имеет естественное поведение, требуя наименьшее число операций обмена для почти упорядоченного списка и наибольшее число операций обмена, когда массив упорядочен в обратном направлении. 1.7 Усовершенствованные алгоритмы сортировки. Сортировка Шелла Все рассматриваемые до сих пор алгоритмы сортировки обладают очень серьезным недостатком, а именно, время их выполнения пропорционально квадрату числа элементов. Для больших объемов данных эти сортировки будут медленными, а начиная с некоторой величины, они будут слишком медленными, чтобы их можно было использовать на практике. Каждый программист слышал или рассказывал "страшные" истории о "сортировке, которая выполнялась три дня". К сожалению, эти истории часто не являлись выдумкой. Если сортировка выполняется слишком долго, то причиной этого может быть используемый алгоритм. Рассмотрим две очень хорошие сортировки. Первая носит название сортировки Шелла, а вторая называется быстрой сортировкой, алгоритм которой признан наилучшим. Эти сортировки выполняются очень быстро. Сортировка Шелла получила свое название по имени ее создателя Д.Л.Шелла. Однако, это название можно считать удачным, так как выполняемые при сортировке действия напоминают укладывание морских ракушек друг на друга. Общий метод, который использует сортировку вставкой, применяет принцип уменьшения расстояния между сравниваемыми элементами. Ниже показана схема выполнения сортировки Шелла для массива "f d a c b e". Сначала сортируются все элементы, которые смещены друг от друга на три позиции. Затем сортируются все элементы, которые смещены на две позиции. И, наконец, упорядочиваются все соседние элементы: проход 1 f d a c b e проход 2 c b a f d e проход 3 a b c e d f полученный результат a b c d e f Алгоритм : сортировка Шелла procedure Shell(var item: DataArray; count:integer); const t = 5; var i, j, k, s, m: integer; h: array[1..t] of integer; x: DataItem; begin h[1]:=9; h[2]:=5; h[3]:=3; h[4]:=2; h[5]:=1; for m := 1 to t do begin k:=h[m]; s:=-k; for i := k+1 to count do begin x := item[i]; j := i-k; if s=0 then begin s := -k; s := s+1; item[s] := x; end; while (x0" и "j<=count" необходимы для того, чтобы предотвратить выход за пределы массива "item". Эта дополнительная проверка в некоторой степени ухудшает сортировку Шелла. Слегка измененные версии сортировки Шелла используют специальные управляющие элементы, которые не являются в действительности частью той информации, которая должна сортироваться. Управляющие элементы имеют граничные для массива данных значения, т.е. наименьшее и наибольшее значения. В этом случае не обязательно выполнять проверку на граничные значения. Однако, применение таких управляющих элементов требует специальных знаний о той информации, которая сортируется, и это снижает универсальность процедуры сортировки. Анализ сортировки Шелла требует решения некоторых сложных математических задач. Время выполнения сортировки Шелла пропорционально n1.2. Эта зависимость значительно лучше квадратичной зависимости, которой подчиняются рассмотренные ранее алгоритмы сортировки. Однако, прежде чем вы решите использовать сортировку Шелла, следует иметь в виду, что быстрая сортировка дает даже еще лучшие результаты. 1.8 Метод разделения (алгоритм "быстрой" сортировки, метод Хоара) Метод быстрой сортировки был разработан Ч. Ф. Р. Хоаром и он же дал ему это название. В настоящее время этот метод сортировки считается наилучшим. Он основан на использовании обменного метода сортировки. Это тем более удивительно, если учесть очень низкое быстродействие сортировки пузырьковым методом, который представляет собой простейшую версию обменной сортировки. В основе быстрой сортировки лежит принцип разбиения. Сначала выбирается некоторое значение в качестве "основы" и затем весь массив разбивается на две части. Одну часть составляют все элементы, равные или большие "основы", а другую часть составляют все элементы меньшего значения, по которому делается разбиение. Этот процесс продолжается для оставшихся частей до тех пор, пока весь массив не будет отсортирован. Например, для массива "fedacb" при использовании в качестве значения разбиения "d" будут получены следующие проходы при выполнении быстрой сортировки: исходное состояние: f e d a c b; первый проход: d c a d e f; второй проход: a b c d e f. Этот процесс продолжается для каждой части "abc" и "def". Фактически этот процесс имеет рекурсивную природу. И действительно, наиболее "аккуратно" быстрая сортировка реализуется посредством рекурсивного алгоритма. Выбор значения разбиения можно сделать двумя способами. Это значение можно выбирать случайным образом или путем усреднения небольшого числа значений, выбранных из массива. Для оптимальной сортировки требуется выбрать значение, которое будет находиться в точности посередине всех элементов. Однако, для большинства наборов данных это сделать нелегко. Однако, даже в худшем случае, когда выбирается одно из экстремальных значений, быстрая сортировка работает достаточно хорошо. В приводимом ниже алгоритме быстрой сортировки в качестве значения разбиения используется среднее значение. Хотя такой подход не всегда является наилучшим, он достаточно прост и сортировка будет выполняться правильно. быстрая сортировка procedure QuickSort(var item: DataArray; count:integer); procedure qs(l, r: integer; var it: DataArray); var i, j: integer; x, y: DataItem; begin i:=l; j:=r; x:=it[(l+r) div 2]; repeat while it[i]j; if lA[i+1] then obmen (A[i], A[i+1]); writeln ('resultat:'); for i:=1 to k do writeln (A[i]:3:2); readln; end. Результат выполнения алгоритма показан на рисунке 2.1: Рисунок 2.1 – Результат решения задачи №1 2.2 Задача №2 Условие: Задан одномерный массив целых чисел. Заменить все отрицательные элементы массива их квадратами и упорядочить элементы массива по возрастанию. Решение: Данная задача является аналогичной предыдущей, следовательно, решим её, опять же, методом обмена, как наиболее простым. Program Zadacha2; uses crt; const n=100; procedure obmen (var x,y: integer); var t:integer; begin t:=x; x:=y; y:=t; end; var A:array [1..n] of integer; i,k,j:integer; begin clrscr; writeln ('vvedite razmer massiva'); readln (k); writeln ('vvedite elementy massiva'); for i:=1 to k do readln (A[i]); for i:=1 to k do if A[i]<0 then A[i]:=sqr(A[i]); for j:=1 to k-1 do for i:=1 to k-j do if A[i]>A[i+1] then obmen (A[i], A[i+1]); writeln ('resultat:'); for i:=1 to k do write (A[i]); readln; end. 2.3 Задача №3 Условие: Задан одномерный массив целых чисел. Преобразовать массив таким образом, чтобы сначала располагались все отрицательные элементы, а потом – все положительные (элементы, равные нулю, считать положительными). Решение : Program Zadacha3; uses crt; const n=100; procedure obmen (var x,y: integer); var t:integer; begin t:=x; x:=y; y:=t; end; var A:array [1..n] of integer; i,k,j:integer; begin clrscr; writeln ('vvedite razmer massiva'); readln (k); writeln ('vvedite elementy massiva'); for i:=1 to k do readln (A[i]); for j:=1 to k-1 do for i:=1 to k-j do if A[i]>A[i+1] then obmen (A[i], A[i+1]); writeln ('resultat:'); for i:=1 to k do writeln (A[i]); readln; end. Данная задача решена методом обмена. Заключение Задача сортировки в программировании не решена полностью. Хоть и существует большое количество алгоритмов сортировок, все же таки целью программирования является не только разработка алгоритмов сортировки элементов, но и разработка самых эффективных алгоритмов сортировки. Рассмотренные в данной курсовой работе методы сортировки имеют как преимущества, так и недостатки. Выбор того или иного алгоритма сортировки зависит от конкретной задачи. Так, сортировка большого числа элементов пузырьковым методом, методом вставки или выбора потребует много времени, т.к. время выполнения сортировки находится в квадратичной зависимости от числа элементов массива. Для больших объемов данных эти сортировки будут медленными, а начиная с некоторой величины, они будут слишком медленными, чтобы их можно было использовать на практике. Однако, они идеально подходят для сортировки небольшого количества элементов. Кроме этого, сортировка вставкой имеет два преимущества. Во-первых, она обладает естественным поведением, т.е. она выполняется быстрее для упорядоченного массива и дольше всего выполняется, когда массив упорядочен в обратном направлении. Это делает сортировку вставкой полезной для упорядочения почти отсортированных массивов. Во-вторых, элементы с одинаковыми ключами не переставляются: если список элементов сортируется с использованием двух ключей, то после завершения сортировки вставкой он по-прежнему будет упорядочен по двум ключам. И, наконец, некоторые из простых методов можно расширить до более хороших методов или использовать их для улучшения более сложных. Например, таких как метод Хоара и метод Шелла. Список использованных источников 1. Глушков, В.Н. Основы безбумажной информатики Изд. 2-е, испр./Н. В. Глушков - М: Наука, 1987.- 232с. 2. Джордейн, Р. Справочник программиста персональных компьютеров типа IBM PC, XT и AT: Пер. с англ./ Предисл. Н.В. Гайского, 2001 – 116с. 3. Довгаль, С.И. Персональные ЭВМ: Турбо-Паскаль V6.0, Объектное программирование, Локальные сети. (учебное пособие)/, С.И. Довгаль, Б.Ю. Литвинов, А.И. Сбитнев , - Киев: Информсистема сервис, 1993. - 210с. 4. Зубков, С.В. Assembler , DOS , Windows и Unix ./С.В. Зубков - М.: ДМК, 1999.-640с. 5. Корнеев, В.В. Современные микропроцессоры. /В.В. Корнеев, А.В. Киселев - М.: Нолидж, 1998.-376с. 6. Гук, М.А. Процессоры Pentium II, Pentium Pro и просто Pentium./ М.А. Гук - С-Пб: Питер, 1999. - 183с. 7. Офицеров, Д.В. Программирование в интегрированной среде Турбо-Паскаль: Справ. пособие. /Д.В. Офицеров, В.А. Старых - Мн.: Беларусь, 1992. - 240с. 8. Павловская, Т.А. Паскаль. Программирование на языке высокого уровня: Учебник для вузов/ Т.А. Павловская – СПб.: Питер, 2006. - 123 с. 9. Перминов, О.Н. Программирование на языке Паскаль. / О.Н. Перминов - М.: Радио и связь, 1988. - 156с. 10. Прайс, Д. Программирование на языке Паскаль: Практическое руководство. Пер. с англ./Д. Прайс - М.: Мир, 1987. - 232с.
1Архитектура и строительство
2Астрономия, авиация, космонавтика
 
3Безопасность жизнедеятельности
4Биология
 
5Военная кафедра, гражданская оборона
 
6География, экономическая география
7Геология и геодезия
8Государственное регулирование и налоги
 
9Естествознание
 
10Журналистика
 
11Законодательство и право
12Адвокатура
13Административное право
14Арбитражное процессуальное право
15Банковское право
16Государство и право
17Гражданское право и процесс
18Жилищное право
19Законодательство зарубежных стран
20Земельное право
21Конституционное право
22Конституционное право зарубежных стран
23Международное право
24Муниципальное право
25Налоговое право
26Римское право
27Семейное право
28Таможенное право
29Трудовое право
30Уголовное право и процесс
31Финансовое право
32Хозяйственное право
33Экологическое право
34Юриспруденция
 
35Иностранные языки
36Информатика, информационные технологии
37Базы данных
38Компьютерные сети
39Программирование
40Искусство и культура
41Краеведение
42Культурология
43Музыка
44История
45Биографии
46Историческая личность
47Литература
 
48Маркетинг и реклама
49Математика
50Медицина и здоровье
51Менеджмент
52Антикризисное управление
53Делопроизводство и документооборот
54Логистика
 
55Педагогика
56Политология
57Правоохранительные органы
58Криминалистика и криминология
59Прочее
60Психология
61Юридическая психология
 
62Радиоэлектроника
63Религия
 
64Сельское хозяйство и землепользование
65Социология
66Страхование
 
67Технологии
68Материаловедение
69Машиностроение
70Металлургия
71Транспорт
72Туризм
 
73Физика
74Физкультура и спорт
75Философия
 
76Химия
 
77Экология, охрана природы
78Экономика и финансы
79Анализ хозяйственной деятельности
80Банковское дело и кредитование
81Биржевое дело
82Бухгалтерский учет и аудит
83История экономических учений
84Международные отношения
85Предпринимательство, бизнес, микроэкономика
86Финансы
87Ценные бумаги и фондовый рынок
88Экономика предприятия
89Экономико-математическое моделирование
90Экономическая теория

 Анекдоты - это почти как рефераты, только короткие и смешные Следующий
Уровень привлекательности: чуть не сожгли на масленицу.
Anekdot.ru

Узнайте стоимость курсовой, диплома, реферата на заказ.

Обратите внимание, курсовая по информатике и информационным технологиям "Описания методов", также как и все другие рефераты, курсовые, дипломные и другие работы вы можете скачать бесплатно.

Смотрите также:


Банк рефератов - РефератБанк.ру
© РефератБанк, 2002 - 2016
Рейтинг@Mail.ru