【发布时间】:2017-05-14 13:01:42
【问题描述】:
所以我试图按降序将节点插入到链表中,但是当我得到重复的数字并且找不到解决问题的好方法时我很挣扎。我要么遇到数字丢失/程序崩溃,要么程序无限次仅列出 1 个数字。
这是我认为符合“else”语句的代码,这是我无法弄清楚的部分,我只是离开了我的上一个版本,这显然不起作用
void Link::insert(int number) {
Node *news = new Node;
news->number = number;
if(first == NULL) {
first = news;
}
if(news->number > first->number) {
Node *temp = first;
first = news;
news->next = temp;
} else {
Node *temp = first;
while (temp->next || news->number < temp->number) {
temp=temp->next;
}
temp->next = news;
news->next = temp->next;
}
}
如果需要其他功能或我的 main.cpp 请告诉我。
【问题讨论】:
标签: c++ sorting pointers linked-list insert