Форум программистов, компьютерный форум, киберфорум
Free Pascal
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 19.12.2012
Сообщений: 4
1

Линейный список

19.12.2012, 16:57. Показов 926. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите пожалуйста написать саму процедуру к этой задаче:
Написать программу, содержащую процедуру, которая объединяет два упорядоченных по неубыванию списка М1 и М2 в один упорядоченный по неубыванию список,построив новый список М.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
19.12.2012, 16:57
Ответы с готовыми решениями:

Линейный однонаправленный список
Задание Написать программу для реализации линейного однонаправленного списка в консольном...

Линейный список и удаление простых чисел
Помогите пожалуйста. Построить линейный список из входной последовательности чисел. Удалить из...

Линейный список: картотека абонентов междугородной телефонной станции
Здавствуйте помогите с решением!? На междугородной телефонной станции картотека...

линейный список
в линейном однонаправленном списке, содержащем в качестве данного целые числа, проверить,...

3
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
22.12.2012, 01:32 2
Pascal
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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
program prog;
 
type
  TNode = record
    data: Integer;
    next: ^TNode;
  end;
 
  TList = record
    head: ^TNode;
    tail: ^TNode;
    size: Integer;
  end;
 
 
procedure ListInit(var list: TList);
begin
  list.head:= nil;
  list.tail:= nil;
  list.size:= 0;
end;
 
 
procedure ListPushBack(var list: TList; data: Integer);
begin
  if list.head = nil then begin
    New(list.head);
    list.head^.data:= data;
    list.head^.next:= nil;
    list.tail := list.head;
  end
 
  else begin
    New(list.tail^.next);
    list.tail:= list.tail^.next;
    list.tail^.data:= data;
    list.tail^.next:= nil;
  end;
 
  Inc(list.size);
end;
 
 
procedure ListWrite(const list: TList);
var
  node: ^TNode;
begin
  node:= list.head;
 
  while node <> nil do begin
    Write(node^.data, ' ');
    node:= node^.next;
  end;
 
  WriteLn;
end;
 
 
procedure ListFree(var list: TList);
var
  node: ^TNode;
begin
  while list.head <> nil do begin
    node:= list.head^.next;
    Dispose(list.head);
    list.head:= node;
  end;
end;
 
 
procedure ListMerge(const list1: TList; const list2: TList; var targetList: TList);
var  
  node1, node2: ^TNode;
begin  
  node1:= list1.head;
  node2:= list2.head;
 
  while true do begin
    if node2^.data < node1^.data then begin
      ListPushBack(targetList, node2^.data);
      node2:= node2^.next;
    end  
    else begin
      ListPushBack(targetList, node1^.data);
      node1:= node1^.next;
    end;
      
    if node1 = nil then begin      
      while node2 <> nil do begin
        ListPushBack(targetList, node2^.data);
        node2:= node2^.next;
      end;
      Exit;
    end;
    
    if node2 = nil then begin
      while node1 <> nil do begin
        ListPushBack(targetList, node1^.data);
        node1:= node1^.next;
      end;      
      Exit;
    end;
  end;    
end;
 
 
var
  n: Integer;
  list1, list2, list3: TList;
begin    
  ListInit(list1);
  for n:= -5 to 5 do
    ListPushBack(list1, n);
 
  ListInit(list2);  
  for n:= 1 to 10 do
    ListPushBack(list2, n);
 
  ListInit(list3);
  ListMerge(list1, list2, list3);
    
  ListWrite(list1);
  ListWrite(list2);
  ListWrite(list3);
 
  ListFree(list1);
  ListFree(list2);
  ListFree(list3);
end.
0
0 / 0 / 0
Регистрация: 19.12.2012
Сообщений: 4
22.12.2012, 18:13  [ТС] 3
Чёт ругается в 28 строке
0
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
22.12.2012, 23:47 4
Если вы используете Free Pascal всё должно компилироваться и запускаться без проблем.
0
22.12.2012, 23:47
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
22.12.2012, 23:47
Помогаю со студенческими работами здесь

Линейный динамический список
Задан линейный динамический список, в котором адрес следующего элемента расположен в поле Next. ...

линейный односвязный список
Помогите создать линейный односвязный список

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

Связный (линейный) список
Люди , помогите плиз!!!!!!!!!!!!!!!!!! не могу решить задачу на список. может кто-нидь подскажет...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Что такое хорошо и что такое плохо, вид сбоку. Индивид и общество - грань не нарушения.
Hrethgir 18.01.2025
В моей личной жизни и времени, я рассуждаю категорией "хуже-лучше", в том плане, когда меня спросили например - "а зачем ты делаешь свой процессор?", то я ответил - "чтобы сделать свою жизнь лучше". . .
Передача по ссылке или по значению в Java?
InfoMaster 18.01.2025
В мире программирования на Java одним из ключевых аспектов, требующих глубокого понимания, является механизм передачи параметров в методы. Этот фундаментальный концепт часто становится источником. . .
Тернарный условный оператор в Python
InfoMaster 18.01.2025
В мире программирования существует множество инструментов и конструкций, позволяющих создавать эффективный и лаконичный код. Одним из таких инструментов является тернарный условный оператор, который. . .
Как удалить неотслеживаемые файлы из рабочего дерева Git
InfoMaster 18.01.2025
В процессе разработки программного обеспечения с использованием системы контроля версий Git часто возникает необходимость в управлении неотслеживаемыми файлами. Неотслеживаемые файлы (untracked. . .
Что делает код if __name__ == "__main__": в Python
InfoMaster 18.01.2025
В мире программирования на Python существует множество важных концепций, и одной из наиболее интересных является конструкция if __name__ == "__main__". Эта специальная конструкция играет ключевую. . .
Как заставить Git забыть об отслеживаемом файле, добавленном в .gitignore
InfoMaster 18.01.2025
В мире разработки программного обеспечения система контроля версий Git стала неотъемлемой частью рабочего процесса, позволяя эффективно отслеживать изменения в коде и управлять ими. Однако. . .
Что означает use strict в JavaScript и для чего используется
InfoMaster 18.01.2025
В мире современной веб-разработки JavaScript играет ключевую роль как один из основных языков программирования. По мере его эволюции возникла необходимость в механизмах, которые помогли бы. . .
Как работать со скрытыми (hidden) элементами в jQuery
InfoMaster 18.01.2025
В современной веб-разработке управление видимостью элементов на странице является одним из ключевых аспектов создания интерактивных пользовательских интерфейсов. jQuery предоставляет мощный набор. . .
Как переключаться между ветками (Branch) с помощью checkout в Git
InfoMaster 18.01.2025
Ветки в Git являются одной из ключевых концепций для управления версионностью кода, позволяя разработчикам эффективно работать в команде и параллельно развивать программные проекты. Каждый новый. . .
Что такое стек и куча, чем они отличаются и где находятся
InfoMaster 18.01.2025
Понимание основных концепций памяти в программировании В мире современного программирования эффективное управление памятью играет ключевую роль в создании производительных и надежных приложений. . . .
Как использовать комментарии в JSON
InfoMaster 18.01.2025
JSON (JavaScript Object Notation) представляет собой легкий и широко используемый формат обмена данными, который стал стандартом де-факто для веб-приложений и программных интерфейсов. При работе с. . .
Как заставить git pull перезаписать локальные файлы в Git
InfoMaster 18.01.2025
Проблема перезаписи локальных файлов в Git При работе с системой контроля версий Git разработчики часто сталкиваются с ситуацией, когда необходимо синхронизировать локальный репозиторий с. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru