Главная » Просмотр файлов » Лекции по информатике

Лекции по информатике (984119), страница 27

Файл №984119 Лекции по информатике (Лекции по информатике) 27 страницаЛекции по информатике (984119) страница 272015-07-19СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 27)

) Рор ЯЩф; 1п1С Я1); 1п1С Я2); ~г Упорядоченныи отрезок из Яфг/ переписываенгся в Я1 ) жЬ11е поС Епцйу(СЯ[ф с1о Ьедш И' У > ТорЯЩ]) СЬеп !' Отрезок заканчивается, как только обнаружится инверсия. 3 Ьгеа1с; 1эиз1гЯ1, Ч): !' Очередной элемент отрезка добав яется в хвост активной очереди. Ъ': =-- ТорЯЩ]) ! Из рабочей очереди извлекаетпся следующий. Рор(С~С~[ф епс1; РизЬЯ1, 1г); !' Если разделяемая очередь непуста 3 1Г поС ЕшрсуЯ©ф СЬеп Ьедш а11 г- Са1ве; то иереьисатпь в текущую выходную (активную) очередь Я2 еще один упорядоченный отрезок 1'аналогично).

) Ъ': -- ТорЩС1[ф; РорЯС~[1]); чгЬ11е поС Еш1эсуЯ®ф с!о Ьефп 11 Ъ' > ТсэрЯС2[ф СЬеп 1)гоа1с: Рпз1)Я2, Ч); Ъ: — Тор®Щ]); РорЯЩ]) епс1; РпзЩ2,Ч); / Слтпь очереди с помещением результата, в приемник Давос ъ~ ) Мегре(С~1., С~2, (~фпоС 1]) епс1 !' Поскольку Я2 пуста, то слияние как таковое не вьтолняетпся. Вместо этого упорядоченный отрезок из Я! доливается в Яфпо1 г/3 е1ве Ьефп Мн1е поС ЕтрсуЯ1) с1о Ъедш РизЩС~[поС 1], ТорЯ!)); Роро!) епс1 епс1 ппС11 а!1:, С1 с-- С2С11поС 1] ( Отсортированная очередь из приемника, помещается, на мсссто исходной 3 епс1; ( ЬЫСТРЛЯ сортиросэка ) ргосес1пге Аррепс1(айаг С11; С)элене; С~2: Опсас); ( Вспомогатель>лая процедура ) ( коэлкатпенация очередеи': присоес1инить Я2 в конец Ц1 ) айаг 'сл': Т'э'а1ие; Ьедш кксЬ11е поС ЕшрСуЯ2) с1о Ье~1п Рпз1лЯ1 ТсэрЯ2)) РорЯ2) ( Локальная копия очереди с12 исчерпывается ) епс1 епс1; ( БЫСТР4Я сортировка в таком, виде требует ОЧЕНЬ много памяти для.

вспомогательнълх очередей и чудовищно неэффекспивна ) ргосес1пге С1шс1сьос11л аг ф С1пеэле); элаг (~1, С12: С1элепе: ( г7окальньле переменные — очереди, отводятся, всяхсий раз при рекурсивной активации процедурьл 3 'эл': ТЪп1ие; Ьеа:ш 1К поС КпэрсуЯ) СЬеп Ьедш ( РВлициалллзпция комплекта локальных очередей текущей актавании процедурьл ) 1шС Я1):, 1п1С Я2); '>Л:- - ТорЯ); ( из С1 удаляется первьил элелеепт ) РорЯ); ( он будепл «зерноль> сортировьт,1 лчЬ11е поС Ешр!уЯ) с1о Ье~ш 14' ТорЯ) «с 'Ч СЬеп ( остаплок Ц разделяется на две очереди: 3 РизЬЯ1, ТорЯ)) ( В Ц1 запосяпсся все элеме~плъл Я, меыъилие зерна, ) е1ве РизЬЯ2, ТорЯ)); ( В Я2 — все элементы С1, болъспие зерна Л РорЯ) ( Рассматриваемый элемент удаляется из исходной очереди ) епс1; С1шс1сВогС Я1); С1шс1сВогСЯ2); ( Подочереди С11 и С12 сортируются рекурсивно л РозЬЯ1, У); Аррепс1Я1, С12); ( резулътируюьцая очередь образуется ) С2: — С21 ( как конкатенация: 3 епс1 ( (отсортпированная С11) )! зерно (( (отсортировапная 02) ) епс1; 377 ( сортировка ПУЗЫРЬКОМ эг ргосес1пге ВпЬЫеЯогг[тгаг С~: Сгггглпе); ( ггроверпть, есть лгг, в очереди два подряд идгггцих элгемгггппа«первый иэ когпорьгх богглпие второго.

Если до, создать новую очередь — коггто исходной в которой эти доо, соседних элемента, обмеггеггы, гг лаг СЯ: аггау[Ьоо1еап] оГ С.1ггвпе: 1, ЬЫ: Ьоо1еап; 'гг: Т'чга1пе; Ьецш : — - Га1ве; ЧФ]: -Ф гереаС 1п1С Я©ггоС ф; Ыэ1: - Га1ве; ( Обменов пока не бы.ло ( Ъ':-- ТорЯСг[ф; ( Обмен будет происходить через буфер Г гг Рор[СЯ[г]); Мп1е поС ЕшргуЯЦ[ф с1о Ьедш 11 'гг ) Тор1СЯ[ф СЬеп Ьгеа1с: ( Требуется обмен г ( Обмен не нужен 1 РпзЬЯфпоС г], Ъ']; ( копировать в выходную очередь все г Ч: - ТорЯС~[1]): ( элементы пока соблюдаетася упорядоченность, РоРЯЩ]): ( Уда«ЯЯ их из входной очеРеди гг епс1; 1Г поС ЕггцауЯС~(ф СЬеп ЬеКш ( тгрегставить элгсгггегггпы 3 ЬЫ:-- Сгпе; Рггя1г[СЯ[поС 1]., "1ЬрЯС1[1])); ( Следулгггцггй, менгпиий алгемснга нолпрпвлягепгся на выхос1 г 1лорЯ©ф ( и удаляется из входной очереди у' епс1; РпэЬЯфпоС 1],Ч); ( Л теггерь на выход следует «придержаггггыггг«больший элемент 1 ( копировать остаток входной очереди, ленивый вариангп всего один облген за проход! г ллгЬ11е поС Епгргу[СЯ[ф с1о Ье~ш РпэЩфпоС 1], '1орЯЩф; РорЯЩ]) епс1., :-- поС 1 ппС11 поС ЬЫ; (усовершенсгггвованный пузырек) й:-- ФИ епс1; 3 1' модифицированная пузырьковая сортировка с просегсванием 3 ргосес1пге Я|ЙЯогг(ьаг С1: С1ггспге); 1' проеерпть, есть эсгс, в очереди два подряд идусцих элемента,, первый из которыя; бэоэсьсссе второго.

Всэси до, создать новую сэчересЭь — коссгсю исходной в которой эти два элемента обмеиеиъс, Кроме того, если обмен состоялся, гссэгсьсггсссться еьце тсродвссиуть меэсьиэлсй элемеспп к началу выходной о"середи 1 айаг СЯ: аггау[Ьоо1еап[ оС' С1ггегге; С11: С1иеие; !' Локальная вспомогательная очередь. Всего используется. Л очереди 1 1, ЬЫ: Ьоо1еап; 'Ч, Ъ'1: '1'Ъа1гге; Ьеа:1п СК[1[:== ф гереаС !п1С ЯфпоС ф; !п1С Я1); Ъ':- - ТорЯЩ1[); ЬЫ:-- Га1ве; РорЯЩ1[); жЬ11е поС ЕпгрСуЯС1[ф с1о Ьеаш 1С' Ч'.-Тор(СЯ[ф СЬеп Ьгеа1г; РпвЬЯ1, Ч); 1' копироваэпь во веаомсэгательпунэ очередь Я1 1 Ч: — ТорЯС~[ф; сг элемсэнгпьс поко, сэобэлюдаепссэя упорядо'сениость эС Рор(СЯ [ф: епс1; 1Г поС 1'.псрСуЯ®ф СЬеп Ьедш !' упорядоченность нарусаена, гсерехэповисть элементьс 1 1эЫ: Сгпе; Ч1:- ТорЯС1[1[); РорЯС1[Ц); 1' ...

и перемсютить меньсассйс элемелпп и началу Я1, выполнив его вставку в выходную последовательность 1 Мп1е поС ЕшрСу[Сэ1) с1о Ьед1п 11' Ъ'1 с- ТорЯ1) СЬеп Ьгеа1г; РизЬ(СЯ[поС 1[, ТорЯ1))! Рор(Щ) епг1; РизЬЯфпоС ф Ъ'1); !' Встав.ляем но, найденное место эС Мп1е поС Етпргу(Сэ1) с1о Ьедш !' копировать осгпаток Я1 эС Рпз1г(СЯ[поС 1[, ТорЯ1)); 1эо1э(С11) епс1; Рггя1г[СЯ(поС г(, Ч); 1' копировать оппоток исходной очереди,~ гчЬ11е поС Егпрсу[ЧС~[1() с1о Ьедш Рггя1гЯЩпоС 1(, Тор(чч[1()); Роро®г() епс1; поС г епс1 е1яе Ьедш Чь-Ф; РияЩ,Ъ') 1' Вставляем в конец очереди наибольший элемент из участвовавших в сривнепии г епс1; ппС11 поС ЬЫ 1' повторять пока были перестановка зг епс1; 1' рекурсивный реверс очереди — факгпически создаегпся резидентная коп я очереди в стеке значений экземпляров переменнои у; неявно образующемся при рекурсивном вызове зг ргосес1пге Кечегве[ггаг (~: г.Сиегге); айаг Ъ': Т'гга1гге: Ьедш 11 поС Етпрсу1Ч) СЬеп Ьефп 'ч': - Тор[® Рор[®; Вечс гяе[ф; Рггз1гЩ, Ч) епс1 епс1; Ьефп ТЕБТ(Ц ь- '0123450789'; ТЕБТ(2(; =- '9876513210'г ТЕЯТ(3(: — '7832927 105', гереаС гчг1Се[Т)есс1г„1)пяегС1оп„В)ггЬЫе ®гг1с1с М)его 8)гй„К)еъегяе Е)хгг>„'); геас11п[с); 1Г с ш ('Г','1', 'К','В','ф,'М','8'( СЬеп Ьефп Гог 1с: - 1 Со 3 с1о Ьееш 1Ыс гч); Сог 1:-- 1 Со 10 с1о РггзЩ, .огч1 [ТЕВТ [Ц [г() — огс1 ['0') ); жг1Се1п[' тест гч '.

1с: 2); жг1Се[ТСсходггагг очередь: '); Р1яр1ауЯ); саяе с оГ 1г': Гегс!>ЯогВ(®; '1': 1пвег1Яогс(ф; 'В': 13ц!>Ыеоог1,(®; 'С~': С~п!с1 Бога~®; ' М': Х! етое)огг (ф; 'Я': Я>йяогг (С~): 'й'. Кегегве(ф епс1; ътйеГРезультат: '); Р!ар!ау Щ) ! епс1; жгйе1п; епс1; пп01 с =- 'Е' епс1. 7.1.2 Экспорт и импорт объектов Модуль представлет собой программную единицу, изолированную от объектов других программ.

Он как бы заключен в оболочку, предохраняющую внутренние объекты модуля от нежелательного доступа извне. К некоторым данным и услугам модуля доступ может быть разрешен и соответствующие разрывы в его оболочке называются интер>!>ейсол>. модуля. Таким образом, для организации межмодульного взаимодействия его участники должны обменяться взаимными объявлениями желаемых и доступных обьектов друг друга. В соответствии с направленностью этих интерфейсов они получили название экспорта и импорта !271.

Экспортируемые обьекты модуля это константы, типы, переменные и процедуры, которые достугшы для использования в других модулях. Импорт обьектов -- это получение доступа к экспортируемым обьектам других модус>ей. Списки объектов экс>юрта-импорта перечисляются в интерфейсной части модуля. 7.2 Программирование в абстрактных типах данных Абстракция, как и типы, в той или иной степени присуща любому языку программирования сколько-нибудь высокого уровня (16~. Как пишет Э. Дейкстра, .даже понятие переменной представляет собой абстракцию соответствующего текущего значения.

Тем более следует считать абстракцией понятия типа и системы типо>з. Описание тех же типов в терминах стандартной реализации так же является абстракцией по отношению к сугубо машинному описанию. Таким образом, абстракция в программировании имеет уровни, высота которых измеряется по отношени>о к целевой машине. которая, в свою очередь, может быть абстрактной или программно эмулируемой !591. Абстракция это не тс>лько отвлечение от чего-то несущественного и потому помогающее лучше отразить суть дела.

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

АГД это, по существу, определение некоторого понятия в виде класса (одного или более) обьсктов с некоторыми свойствами и операциями. Так как свойства обычно выражаются в терминах операций и предикатов, которые тоже считак<тся операциями, то абстрактный тип данных часто отождествляется с соответствующим множествоь< операций. Например, алгебраический (опсрационистский) взгляд на понятие стека в терминах операций «втолкнуть элемент в стек», «вынуть из него», «создать новый стек», «показать верхний элемент» и т. д.

Характеристики

Тип файла
DJVU-файл
Размер
675,15 Kb
Тип материала
Высшее учебное заведение

Список файлов лекций

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6353
Авторов
на СтудИзбе
311
Средний доход
с одного платного файла
Обучение Подробнее