数据结构复习链表的倒置(头插法倒置)
Posted awcxv
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据结构复习链表的倒置(头插法倒置)相关的知识,希望对你有一定的参考价值。
#include <bits/stdc++.h> using namespace std; typedef int ElemType; struct LNode ElemType data; LNode *next; ; LNode *head,*tail; void init() head = (LNode*)malloc(sizeof(LNode)); head->next = NULL; tail = head; void input_data() int x; cin >> x; while (x!=-1) LNode *temp = (LNode*)malloc(sizeof(LNode)); temp->data = x; temp->next = NULL; tail->next = temp; tail = temp; cin >> x; //关键函数 void _reverse() LNode *p = head->next; head->next = NULL; while (p) LNode *temp = p->next;//记录下当前遍历到的这个节点的下一个 p->next = head->next;//这个几点的下一个节点接在头结点后面的那个节点 head->next = p;//头结点的后一个节点指向该节点,从而完成插入过程 p = temp; void print() LNode *temp = head->next; while (temp) cout<<temp->data<<" "; temp = temp->next; int main() init(); //freopen("D://rush.txt","r",stdin); input_data(); _reverse(); print(); fclose(stdin); return 0;
以上是关于数据结构复习链表的倒置(头插法倒置)的主要内容,如果未能解决你的问题,请参考以下文章