为了账号安全,请及时绑定邮箱和手机立即绑定

单链表第二个结点存不进数据?

单链表第二个结点存不进数据?

Ma峰 2016-12-20 12:07:44
void bijiao(sstable ss,suoyinbiao &s) { suoyinbiao p = s; int i; int j = 1; int a = ss.r[1].key; if (j-1<=ss.length/5) { for (i = (j - 1) * 5 + 1;i <= j * 5;i++) { if (ss.r[i].key>a) { a = ss.r[i].key; p->keyzhi = a; p->weizhi = (j - 1) * 5 + 1; } } j++; p = p->next; } } int chazhao(sstable ss, suoyinbiao &s, int k) { int n = 1; suoyinbiao p = s; while (p!=NULL) { if (k<=p->keyzhi) { for (int i = n * 5;i >= n * 5 - 4;--i) { if (ss.r[i].key == k) { return i; } } } p = p->next; if (p == NULL) n++; } }函数第一个参数是一个顺序表,第二个参数是一个单链表,函数意思是5个5个比较顺序表中的元素,将最大的元素存入单链表中,每个结点中的weizhi存的是每五个元素的第一个元素的位置。但是当我输入7个元素,将头5个元素存入第一个结点后,第二个结点本应该存剩下两个元素中最大的和6这个位置,但是当我调用第二个函数的时候却显示第二个结点为空,请大神解惑。。。
查看完整描述

1 回答

?
冷凌川

TA贡献2条经验 获得超1个赞

申请新的节点空间了吗

查看完整回答
反对 回复 2016-12-22
  • 1 回答
  • 0 关注
  • 1375 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信