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++;
}
}函數(shù)第一個參數(shù)是一個順序表,第二個參數(shù)是一個單鏈表,函數(shù)意思是5個5個比較順序表中的元素,將最大的元素存入單鏈表中,每個結(jié)點中的weizhi存的是每五個元素的第一個元素的位置。但是當我輸入7個元素,將頭5個元素存入第一個結(jié)點后,第二個結(jié)點本應該存剩下兩個元素中最大的和6這個位置,但是當我調(diào)用第二個函數(shù)的時候卻顯示第二個結(jié)點為空,請大神解惑。。。
單鏈表第二個結(jié)點存不進數(shù)據(jù)?
Ma峰
2016-12-20 12:07:44