Programming Taskbook 0


Download 1.62 Mb.
Pdf ko'rish
bet69/71
Sana21.06.2023
Hajmi1.62 Mb.
#1644761
TuriУчебное пособие
1   ...   63   64   65   66   67   68   69   70   71
Bog'liq
Abramyan-Pascal2016-1


Глава 5. Дополнительные средства обработки массивов 
113 
ваются значения, полученные при делении времени работы варианта 2 и 
варианта 3 на время работы варианта 1. 
Таблица 5.2. Быстродействие вариантов решения задачи Array88 
Размер size 
Вар. 1 
Вар. 2 
Вар. 3 
Вар.2 / Вар.1 Вар.3 / Вар.1 
8000000 
11 
229 
2013 
20.8 
183.0 
16000000 
22 
448 
4203 
20.4 
191.0 
32000000 
42 
947 
8851 
22.5 
210.7 
64000000 
85 
1984 
18949 
23.3 
222.9 
Мы видим, что вариант 2, выполняющий сортировку массива, работа-
ет медленнее варианта 1 в 20 раз, а вариант 3, использующий для сорти-
ровки запросы Sorted и ToArray, медленнее примерно в 200 раз! Таким обра-
зом, в отношении эффективности первый вариант существенно превосхо-
дит два других (по крайней мере, в случае обработки массивов большого 
размера). Полученные результаты свидетельствуют также о том, что для 
сортировки массивов большого размера следует использовать специально 
разработанные методы, а не универсальные запросы сортировки для по-
следовательностей. 


114 
Литература 
1. Абрамян М. Э. Структуры данных в PascalABC.NET. Выпуск 2. 
Минимумы и максимумы. Списки, множества, словари, стеки и 
очереди. Многомерные структуры. — Ростов н/Д : Изд-во ЮФУ, 2016. 
— 118 с. 
2. Абрамян М. Э. Практикум по программированию на языке Паскаль: 
Массивы, строки, файлы, рекурсия, линейные динамические 
структуры, бинарные деревья. — 7-е изд., перераб. и доп. — 
Ростов н/Д : Изд-во ЮФУ, 2010. — 276 с. 
3. Абрамян М. Э. Платформа .NET: Основные типы стандартной 
библиотеки. Работа с массивами, строками, файлами. Объекты, 
интерфейсы, обобщения. Технология LINQ. — Ростов н/Д : Изд-во 
ЮФУ, 2014. — 218 с. 
4. Абрамян М. Э. Технология LINQ на примерах. Практикум с 
использованием электронного задачника Programming Taskbook for 
LINQ. — М. : ДМК Пресс, 2014. — 326 с. 
5. Абрамян М. Э., Михалкович С. С. Основы программирования на языке 
Паскаль. Скалярные типы данных, управляющие операторы, 
процедуры и функции, работа с графикой в системе PascalABC.NET. 
4-е изд., перераб. и доп. — Ростов н/Д : Изд-во «ЦВВР», 2008. — 
223 c. 
6. Долинер Л. И. Основы программирования в среде PascalABC.NET. — 
Екатеринбург : Изд-во Урал. ун-та, 2014. — 128 с. URL: 
http://elar.urfu.ru/handle/10995/28702 (дата обращения 02.08.2016). 
7. Куклин Д. В. Учебник по программированию. Первые шаги. Язык 
программирования 
PascalABC.NET. 
— 
Киров, 
2014. 
URL: 
http://dvkuklin.ru/fs_ABC/annotation.html (дата обращения 02.08.2016). 


Указатель 
115 
Указатель 
Чтобы упростить использование указателя, запросы, методы и свой-
ства в нем размещены в двух местах: в алфавитном порядке их имен и в 
соответствующих группах. В частности, все запросы дополнительно ука-
заны в группе «Запросы», все функции-генераторы — в группе «Генерато-
ры», а все методы и свойства массивов — в группе «Динамические масси-
вы». Сгруппированы также подпрограммы ввода, подпрограммы вывода и 
подпрограммы, описанные в модуле PT4. В группе «Решения задач» пере-
числены все задачи из задачника Programming Taskbook, рассмотренные в 
данной книге, с указанием страниц, на которых приведены различные ва-
рианты их решения. 
?, тернарная операция, 65, 76 

операция для кортежа, 15 
операция для массивов, 96 
особенность выполнения при 
наличии строкового или 
символьного операнда, 82 
Abs, функция, 87 
Add, метод кортежа, 15 
AdjacentFind, метод массива, 106 
Aggregate, запрос, 63 
All, запрос, 62 
Any, запрос, 62 
Arr, генератор массива (короткая 
функция), 35, 89 
ArrFill, генератор массива, 33 
ArrGen, генератор массива, 33 
ArrRandomInteger, ArrRandom, 
ArrRandomReal, генераторы массива
35 
Average, запрос, 62 
Batch, запрос, 83 
BinarySearch, метод массива, 106 
Cartesian, запрос, 77 
Concat, запрос, 68 
Contains, запрос, 62 
ConvertAll, метод массива, 109 
Copy, функция, 95 
CopyTo, метод массива, 96 
Count, запрос, 41, 62 
Cycle, генератор бесконечной 
последовательности, 49 
DefaultIfEmpty, запрос, 80 
Distinct, запрос, 67 
ElementAt, запрос, 41, 61 
ElementAtOrDefault, запрос, 61 
Except, запрос, 68 
Find, метод массива, 104 
FindAll, метод массива, 104 
FindIndex, метод массива, 104 
FindLast, метод массива, 104 
FindLastIndex, метод массива, 104 
First, запрос, 61 
FirstOrDefault, запрос, 61 
ForEach, запрос, 90 
foreach, оператор цикла, 31 
GroupBy, запрос, 83 
GroupJoin, запрос, 77 
High 
свойство массива, 29 
функция, 30 


116 
HSet, генератор HashSet (короткая 
функция), 89 
in, операция для массива, 106 
IndexMax, метод массива, 104 
IndexMin, метод массива, 104 
IndexOf, метод массива, 104 
int64, целочисленный тип, 63 
Interleave, запрос, 68 
Intersect, запрос, 68 
Iterate, генератор бесконечной 
последовательности, 48 
Join, запрос, 77 
JoinIntoString, запрос, 63 
Last, запрос, 61 
LastIndexMax, метод массива, 104 
LastIndexMin, метод массива, 104 
LastIndexOf, метод массива, 104 
LastMaxBy, запрос, 63 
LastMinBy, запрос, 63 
LastOrDefault, запрос, 61 
Length 
свойство массива, 29 
функция, 30 
LLst, генератор LinkedList (короткая 
функция), 89 
LongCount, запрос, 63 
Low 
свойство массива, 29 
функция, 30 
Lst, генератор List (короткая функция), 
89 
Max, запрос, 62 
MaxBy, запрос, 63 
MaxValue, свойство числовых типов, 46, 
65 
Milliseconds, функция, 38 
MillisecondsDelta, функция, 100 
Min, запрос, 62 
MinBy, запрос, 63 
Numerate, запрос, 73 
OrderBy, запрос, 67 
OrderByDescending, запрос, 67 
Pairwise, запрос, 84 
Download 1.62 Mb.

Do'stlaringiz bilan baham:
1   ...   63   64   65   66   67   68   69   70   71




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling