#include <bits/stdc++.h> using namespace std; typedef struct Node{ int data; Node *prev,*next; }Node,*LinkList; bool init(LinkList &L){ L=(Node *)malloc(sizeof(Node)); if(L==nullptr)return false; L->next=L; L->prev=L; return true; } bool insert(LinkList &L,int i,int e){ int pos=0; Node *p=L; while(p!=nullptr&&pos<i-1){ pos++;p=p->next; } if(p==nullptr)return false; Node *s=(Node *)malloc(sizeof(Node)); s->data=e; s->next=p->next; s->prev=p; p->next->prev=s; p->next=s; return true; } bool deletes(LinkList &L,int i){ int pos=0; Node *p=L; while(p!=nullptr&&pos<i){ pos++;p=p->next; } if(p==nullptr)return false; p->next->prev=p->prev; p->prev->next=p->next; free(p); return true; } void print(LinkList L){ Node *p=L->next; while(p!=L){ cout<<p->data<<' '; p=p->next; } cout<<'\n'; } int main() { LinkList L; init(L); int op,i,e; while(~scanf("%d",&op)){ if(op==0){ print(L); } if(op==1){ cin>>i>>e; insert(L,i,e); } if(op==2){ cin>>i; deletes(L,i); } } return 0; }
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题11.5 (C语言代码)浏览:932 |
多输入输出练习1 (C语言代码)浏览:1219 |
妹子杀手的故事 (C语言代码)浏览:1297 |
C语言程序设计教程(第三版)课后习题6.10 (C语言代码)浏览:1090 |
WU-printf基础练习2 (C++代码)浏览:2061 |
数字游戏 (C++代码)浏览:1240 |
1071题解浏览:585 |
C语言程序设计教程(第三版)课后习题11.1 (C语言代码)浏览:525 |
钟神赛车 (C语言代码)浏览:665 |
班级人数 (C语言代码)浏览:981 |