См. также - 3. СТАТИЧЕСКИЕ СТРУКТУРЫ ДАННЫХ

Лекция



Virus neutralizer

Game: Perform tasks and rest cool.7 people play!

Play game

Это окончание невероятной информации про статические структуры данных.

...

Выполнять шаг 3 до тех пор, пока i1<=l1 и i2<=l2.

  • 3. [Сравнение]. Сравнить ключ i1-го элемента из 1-го исходного множества с ключом i2-го элемента из второго исходного множества. Если ключ элемента из 1-го множества меньше, то записать i1-ый элемент из 1-го множества на j-ое место в выходное множество и увеличить i1 на 1. Иначе - записать i2-ой элемент из 2-го множества на j-ое место в выходное множество и увеличить i2 на 1. Увеличить j на 1.
  • 4. [Вывод остатка]. Если i1<=l1, то переписать часть 1-го исходного множества от i1 до l1 включительно в выходное множество. Иначе - переписать часть 2-го исходного множества от i2 до l2 включительно в выходное множество.
  • Программный пример 3.17 иллюстрирует сортировку попарным слиянием в ее обменном варианте - выходные множества формируются на месте входных.

    Virus neutralizer

    Game: Perform tasks and rest cool.7 people play!

    Play game
    {===== Программный пример 3.17 =====} { Сортировка слиянием } Procedure Sort(var a :Seq); Var i0,j0,i,j,si,sj,k,ke,t,m : integer; begin si:=1; { начальный размер одного множества } while si < N do begin { цикл пока одно множество не составит весь массив } i0:=1; { нач. индекс 1-го множества пары } while i0 < N do begin { цикл пока не пересмотрим весь массив } j0:=i0+si; { нач. индекс 2-го множества пары } i:=i0; j:=j0; { размер 2-го множества пары может ограничиваться концом массива } if si > N-j0+1 then sj:=N-j0+1 else sj:=si; if sj > 0 then begin k:=i0; { нач. индекс слитого множества } while (i < i0+si+sj) and (j a[j] then begin { если эл-т 1-го <= элемента 2-го, он остается на своем месте, но вых.множество расширяется иначе - освобождается место в вых.множестве и туда заносится эл-т из 2-го множества } t:=a[j]; for m:=j-1 downto k do a[m+1]:=a[m]; a[k]:=t; j:=j+1; { к след. эл-ту во 2-м множестве } end; { if a[i] > a[j] } k:=k+1; { вых. множество увеличилось } i:=i+1; { если был перенос - за счет сдвига, если не было - за счет перехода эл-та в вых. } end; { while } end; { if sj > 0 } i0:=i0+si*2; { начало следующей пары } end; { while i0 < N } si:=si*2; { размер эл-тов пары увеличивается вдвое } end; { while si < N } end;

    Результаты трассировки примера приведены в таблице 3.11. Для каждого прохода показаны множества, которые на этом проходе сливаются. Обратите внимание на обработку последнего множества, оставшегося без пары.

    3. СТАТИЧЕСКИЕ СТРУКТУРЫ ДАННЫХ

    Таблица 3.11

    Вау!! 😲 Ты еще не читал? Это зря!

    Virus neutralizer

    Game: Perform tasks and rest cool.7 people play!

    Play game

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

    Продолжение:


    Часть 1 3. СТАТИЧЕСКИЕ СТРУКТУРЫ ДАННЫХ
    Часть 2 3.6. Таблицы как структура данных - 3. СТАТИЧЕСКИЕ СТРУКТУРЫ ДАННЫХ
    Часть 3 3.8.2. Сортировки включением - 3. СТАТИЧЕСКИЕ СТРУКТУРЫ ДАННЫХ
    Часть 4 Вау!! 😲 Ты еще не читал? Это зря! - 3. СТАТИЧЕСКИЕ СТРУКТУРЫ ДАННЫХ

    создано: 2014-12-18
    обновлено: 2023-05-23
    420



    Рейтиг 9 of 10. count vote: 2
    Вы довольны ?:


    Поделиться:

    Найди готовое или заработай

    С нашими удобными сервисами без комиссии*

    Как это работает? | Узнать цену?

    Найти исполнителя
    $0 / весь год.
    • У вас есть задание, но нет времени его делать
    • Вы хотите найти профессионала для выплнения задания
    • Возможно примерение функции гаранта на сделку
    • Приорететная поддержка
    • идеально подходит для студентов, у которых нет времени для решения заданий
    Готовое решение
    $0 / весь год.
    • Вы можите продать(исполнителем) или купить(заказчиком) готовое решение
    • Вам предоставят готовое решение
    • Будет предоставлено в минимальные сроки т.к. задание уже готовое
    • Вы получите базовую гарантию 8 дней
    • Вы можете заработать на материалах
    • подходит как для студентов так и для преподавателей
    Я исполнитель
    $0 / весь год.
    • Вы профессионал своего дела
    • У вас есть опыт и желание зарабатывать
    • Вы хотите помочь в решении задач или написании работ
    • Возможно примерение функции гаранта на сделку
    • подходит для опытных студентов так и для преподавателей

    Комментарии


    Оставить комментарий
    Если у вас есть какое-либо предложение, идея, благодарность или комментарий, не стесняйтесь писать. Мы очень ценим отзывы и рады услышать ваше мнение.
    To reply

    Структуры данных

    Термины: Структуры данных