谁能告诉我这段代码的意思?

xiaoxiaojiewang0518 2009-10-30 05:50:38
var head , p ,q , addpcb:link
begin
if head = nil
then begin
head:=addpcb;
head->next = nil
end;

else begin
p:=head
while p<= nil and addpcb->pri >= p->pri
do begin
q:=p;
p:=p->next
end;
q->next:=addpcb;
add->next:=p
end;
end
...全文
129 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
已经结贴了,把结贴的事情给忘记了,不好意思,谢谢啦。
haitao 2009-10-30
  • 打赏
  • 举报
回复
var head , p ,q , addpcb:link 
begin
if head = nil //如果进程链表头是空的
then begin
head:=addpcb; //以所加入的进程作为链表的头
head->next = nil //它的下一个显然是没有的
end;

else begin //否则
p:=head ; //取得链表的头
while (p <= nil) and (addpcb->pri >= p->pri) //循环直到 空或...(pri不知道是什么)
do begin
q:=p; //取得前一个节点
p:=p->next
end; //此时q为符合的最后一个进程
q->next:=addpcb; //新进程加到q的后面
addpcb->next:=p //把不符合的第一进程接到新进程的后面
end;
end
  • 打赏
  • 举报
回复
最好能每一句,帮我写一下注释。
  • 打赏
  • 举报
回复
题目是 假定就绪状态的进程按其优先级自小到大顺序排成队列,当有一进城要进入就绪队列时,应按照它的优先级排在相应的位置上,试写出进程入对的程序!


谢谢!
  • 打赏
  • 举报
回复
我有题目,能不能帮我解释一下,马上给分!
haitao 2009-10-30
  • 打赏
  • 举报
回复
链表里加入一个节点addpcb

16,746

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧