1.最后一条记录当然不能过out函数这句:while p^.next<>lalb do
所以输出不了,你这样的结构应该单独处理首记录或尾记录。
2.Visit函数里的第一个定位循环错,也不能处理最后一条记录
指针概念比较乱,两个new()都没有用。
排序一段大概是这样
if p=dh then
exit
else
while p->pre^.freq>p->freq do
begin
p->pre->next:=p->next;
p->next->pre:=p->pre;
p->pre:=p->pre->pre;
p->next:=p->pre->next;
if p->next=dh then
begin
dh:=p;
break;
end;
end;
细节再调试一下。
所以输出不了,你这样的结构应该单独处理首记录或尾记录。
2.Visit函数里的第一个定位循环错,也不能处理最后一条记录
指针概念比较乱,两个new()都没有用。
排序一段大概是这样
if p=dh then
exit
else
while p->pre^.freq>p->freq do
begin
p->pre->next:=p->next;
p->next->pre:=p->pre;
p->pre:=p->pre->pre;
p->next:=p->pre->next;
if p->next=dh then
begin
dh:=p;
break;
end;
end;
细节再调试一下。
解决方案 »
- delphi更改查询结果
- FastReport 中如果StoreInDfm为false的话,该如何处理才能动态加载设计好的报表文件?
- 在同一FORM中如何保持输入法一致?
- 有关用nmsmtp控件做发email程序时要安全认证如何解决?
- datetimepicker控件的奇怪问题
- 怎么换行写一条sql语句
- 谁有DELPHI5.0的注册码,在线等待!!!!!!!!!!!!!!!!!!!!
- 做程序员的苦恼!谁能帮助解决一下。
- 请求一简易浏览器的(就是可以直接设置HTTP代理服务器以及用户名和密码的)
- messagedlg的图标能自定义吗?
- 如何在delphi写程序旋转和反转一幅wmf或bmp的图像
- 如何解决sql server数据库异地数据传输。
while p->freq>p->pre^.freq do