0
内的对象我使用的是合并排序算法进行排序链表更改方法
void node::merge_sort()
{
if (head == NULL || head->next == NULL)
{
return;
}
node *p = new node;
node *q = new node;
this->divide(&p, &q);
p->merge_sort();
q->merge_sort();
this=merge_lists(p, q);
}
,但我必须要改变这种方法,因为我打字this=merge_lists(p,q)
内的对象。但是这给了一个错误,说nolvalue。有其他方法吗?
除法函数用于将列表分成两部分并将它们存储在p和q中。
这里的指针真的有必要吗?即使他们是,'新'不是。 – chris
指定'this'不起作用!将你的'merge_sort()'函数设计为静态类成员或'node'类之外。 –
@chris是的,他们需要存储的两半的地址,并改变他们在分功能 – zed111