问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

PASCAL中怎么建立一个双向的链表1

发布网友 发布时间:2023-10-23 17:49

我来回答

3个回答

热心网友 时间:2024-12-11 16:47

type pointer=^node;
node=record
data:integer;
front,next:pointer;
end;
var head,tail:pointer; n:integer;
procere creat(var head,tail:pointer; var n:integer); {jianli caozuo}
var p:pointer;
begin
n:=0; new(p);
readln(p^.data); p^.front:=nil; p^.next:=nil;
while p^.data<>-1 do
begin inc(n);
if n=1 then begin head:=p; tail:=p; end
else begin p^.front:=tail; tail^.next:=p; p^.next:=nil;
tail:=p; end;
new(p);
readln(p^.data);
end;end;
procere print(head,tail:pointer);
var p:pointer;
begin
p:=head;
writeln('tou wei:');
while p<>nil do
begin
write(p^.data:6);
p:=p^.next;
end;
writeln;
end;

begin
creat(head,tail,n);
print(head,tail);
dele(head,tail,n,2);
print(head,tail);
end.

热心网友 时间:2024-12-11 16:47

指针实现的双向链表:

type
node = ^list;
list = record
val:integer;
prev,next:node;
end;

{尾部插入}
procere append(var head:node; val:integer);
var
p,t:node;
begin
t := head;
p := nil;

while t <> nil do
begin p := t; t := t^.next; end;

if p <> nil then
begin new(p^.next); t := p^.next end
else
begin new(head); t := head; end;

t^.prev := p;
t^.next := nil;
t^.val := val;
end;

{遍历输出}
procere traversal(head:node);
begin
while head <> nil do
begin
write(head^.val, ' ');
head := head^.next;
end;
writeln;
end;

{反序}
procere reverse(var head:node);
var l,t:node;
begin
l := head;
while l <> nil do
begin
t := l^.next;
l^.next := l^.prev;
l^.prev := t;
head := l;
l := t;
end;
end;

{销毁}
procere destroy(head:node);
var t:node;
begin
while head <> nil do
begin
t := head;
head := head^.next;
dispose(t);
end;
end;

var
head:node = nil;
i:integer;

begin
for i := 1 to 10 do
append(head, i);
traversal(head);
reverse(head);
traversal(head);
destroy(head);
readln;
end.

热心网友 时间:2024-12-11 16:48

var
i,j,n:longint;
pre,now,x,y:array[0..1000] of longint;begin
readln(n);
for i:=1 to n do
begin
readln(x[i*2-1],y[i*2-1]);
pre[i*2-1]:=now[x[i*2-1]];
now[x[i*2-1]]:=i*2-1; x[i*2]:=y[x*2-1]; y[x*2]:=x[i*2-1];
pre[i*2]:=now[x[i*2]];
now[x[i*2]]:=i*2;
end;
end. 是这样的吗?
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
用六个成语各造一段话 关于把握机会的名言名句 关于把握住机会的名言名句(把握机会,成就未来) 关于把握机会的名言名句(把握机会的励志句子) 关于机会的名言名句篇一 包括“机遇”的名言名句(一) BPM中国普及之路还有多远? 哪个公司可以做OA系统 目前业内有很多人认为OA现在某些应用或者说功能在向BPM领域延生,请问... ting的三个声调组词 创建单链表的伪代码2 怎么卸载或者说删除设置里面声音里面那一栏中的来地音乐中的与别_百度... 男生生日送什么礼物好呢?20 ...接水之后有一股土灰味,放过一阵之后就有,怎么样可以除掉异味?_百 ... 任务驱动型作文开头需不需要引用材料8 做完三点式双眼皮, 凹陷 眼皮有向上牵扯 睫毛外翻 我一个手机号注册了两个,另外一个登不上了,怎么办? 洒水车气动球阀怎么安装 韩式双眼皮的恢复问题~眼睫毛外翻啊~ ...穿越的言情小说,可想不好男主,女主,起什么名字好听,多起点,我好... ...小说,女主是一个杀手,帮我想想女主起什么名字好?男主起什么名字好... ...还有非常人贩的主演杰森·斯坦森的新电影叫什么名字 急急急。。请高手帮忙。。我用网银网财付通同里充钱别的都还正常。就... 脸色蜡黄特别显老有什么方法可以改善?1 求链表存图代码。Pascal 一个手机号绑了两个,但是第一个登不上了,怎么办 财富通老是崩溃,360也设置过了不管用啊,两个浏览器都是这样。 新上了个手机号码,可能以前被别人注册过,我现在想自己重...609 女人脸色蜡黄吃什么能有效改善气色 中联重科洒水车,2寸阀门用什么型号气缸? 壳牌机油有几种颜色,哪种颜色好24 黄壳机油怎么样?176 壳牌hx6多少公里衰减是正常的?145 ...格兰杰检验 VEC模型 脉冲响应函数 方差分解的先后顺序 微信怎么设置隐藏,不让好友看到333 婚礼纪2021年营业额 请问一下,江苏省常州市天宁区长途区号? 福州的蚊子为什么这么多喔?3 23号牛乃唐是不是2020年上映?7 《23号牛乃唐》1-2季全集高清完整版视频免费在线观看,求百... 南京大学怎么样?126 属羊的人穿什么颜色衣服最好10 请问五行属木的穿什么颜色比较旺自己9 洒水车上的这玩意叫什么,带阀门的这一节5 洒水车水泵气动电磁阀常开对水泵有没有坏处 奥硝唑栓是不是等同于克霉唑栓3 潮汕人外嫁吗7 沉淀设备中,悬浮物的什么是衡量沉淀效果的重要指标4 为什么没有射进去还会怀孕2 有哪些方法可使蛋白质沉淀?沉淀的原理是什么?有何实用意义?21