题目描述
建立长度为n的单链表,然后将其数据元素逆置,即第1个元素变为最后一个元素,第2个元素变为倒数第2个元素,以此类推,最后一个元素变为第1个元素。(处理的数据类型为字符型。必须使用链表完成。)
输入
第一行为链表长度n; 第二行为链表中的n个数据元素的值。输出
逆置后的原始的值。样例输入
10 ABCDEFGHIJ样例输出
J I H G F E D C B A#include<stdio.h> #include<string.h> #include<math.h> #include<malloc.h> #define INF 0x3f3f3f3f #define MAX(x,y) (x>y?x:y) #define MIN(x,y) (x>y?y:x) #define M 10001 typedef struct LNode { char data; struct LNode* next; }LNode; int main() { LNode* L; L = (LNode*)malloc(sizeof(LNode)); int n; scanf("%d", &n); char m[M]; scanf("%s", m); L->next = NULL; LNode* temp = L; for (int i = 0; i < n; i++) { LNode* p = (LNode*)malloc(sizeof(LNode)); p->data = m[i]; p->next = temp->next; temp->next = p; } while (L->next) { L = L->next; printf("%c ", L->data); } return 0; }
SWUST OJ957: 逆置单链表
最新推荐文章于 2022-04-26 16:57:34 发布