永发信息网

逆转一个带头结点的单链表

答案:1  悬赏:30  手机版
解决时间 2021-04-26 18:42

要求:时间复杂度为O(n)。

希望大家帮忙解答一下~~谢啦!!

最佳答案
#include <stdio.h>

struct node {
int data;
node* next;
};

void reverse(node* head)
{
node* prev, *next, *tail;
prev = head;
tail = next = prev->next;
while(next) {
node* tmp = next;
next = next->next;
tmp->next = prev;
prev = tmp;
}
head->next = prev;
tail->next = NULL;
}

void create(node* head, int* beg, int* end)
{
head->next = NULL;
node* p = head;
while(beg != end) {
p->next = new node;
p->next->data = *beg++;
p->next->next = NULL;
p = p->next;
}
}

void traversal(node* head)
{
node* p = head->next;
while(p) {
printf("%d ", p->data);
p = p->next;
}
putchar('\n');
}

int main()
{
int a[] = {1,2,3,4,5,6,7,8,9,10};
node head;
create(&head, a, a + 10);
traversal(&head);
reverse(&head);
traversal(&head);
getchar();
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
三国多少级亮图标,需要带徒弟吗!详细一点!
真的有命中注定吗?
USB不显示啊
感悟的句子说说心情,说说心情短语人生感悟 无
为什么外地的邮政存则在当地不能查询余额呀?
求一首歌,好像是首德国二战时期的歌曲
仙剑三怎么少一个动画
飞轮海第四张专辑将有几版?
我想找呗我拉黑的人怎么找啊
急求·酷派S100 单机游戏下载
侠盗列车3罪恶都市怎么才能带领手下
DNF机械加点,求高手请教,随便喷
沈阳到四平最早的出租拼车几点在哪有?
阿木电脑启动问题
草林镇在什么地方啊,我要过去处理事情
推荐资讯
资家大山我想知道这个在什么地方
大学生该怎样规划?
穿越狙高手进来一下~
皮肤科去豆豆
QQ爱心公益图标每个月都要捐献吗?
斗鱼骑士主播得多少钱,为什么斗鱼前面几个主
希望专家来评理(剑魂)
人教四年级上册古诗词,小学四年级上册应该掌
八班班级口号霸气押韵,我是7八班的,求个班级
六扇门在历史上真的存在吗?
壶关县质监局在哪里啊,我有事要去这个地方
相对论如果奠基于现代科学之上,那么为什么有
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?