请教一个反转链表的问题
  • 板块学术版
  • 楼主Mercurysinklee
  • 当前回复3
  • 已保存回复3
  • 发布时间2021/6/5 09:53
  • 上次更新2023/11/4 22:19:05
查看原帖
请教一个反转链表的问题
347860
Mercurysinklee楼主2021/6/5 09:53

初学数据结构

ListNode* reverseList(ListNode* head) {
        ListNode*cur=head;
        ListNode*pre=nullptr;
        ListNode*nxt=head->next;
        while(cur!=nullptr)
        {
            cur->next=pre;
            pre=cur;
            cur=nxt;
            nxt=nxt->next;
        }
        return pre;
    }

这是我写的,结果执行出错了

 ListNode* reverseList(ListNode* head) {
        ListNode*pre=nullptr,*cur=head;
        while(cur!=nullptr)
        {
            ListNode*nxt=cur->next;
            cur->next=pre;
            pre=cur;
            cur=nxt;
        }
        return pre;
    }

这是正确的。不明白nxt的定义为什么一定要放到循环里面,总感觉我那样写和这种正确写法没有区别,实在是看不出来为什么,跪求大佬指教!!!

2021/6/5 09:53
加载中...