선형 테이블 삽입 및 삭제
//
//
#include<iostream>
using namespace std;
typedef struct LNode{
int data;
struct LNode *next;
};
int main(){
//
LNode *head=new LNode;
head->data=NULL;
head->next=NULL;
int n;
LNode *p=head;
while(cin>>n&&n){
LNode *q=new LNode;
q->data=n;
q->next=NULL;
p->next=q;
p=q;
}
/*
while(cin>>n&&n){
LNode *q=new LNode;
q->data=n;
q->next=NULL;
q->next=p->next;
p->next=q;
}
*/
p=head->next;
while(p!=NULL){
cout<<p->data<<" ";
p=p->next;
}
cout<<endl;
cin.ignore();
cout<<" :"<<endl;
cin>>n;
p=head->next;
LNode *q;
q=head;
LNode *r;
while(p->next!=NULL){
if(p->data==n){
r=p;
q->next=p->next;
delete r;
break;
}
else{
q=p;
p=p->next;
}
}
if(p->next==NULL){
r=p;
delete r;
}
q->next=NULL;
p=head->next;
while(p!=NULL){
cout<<p->data<<" ";
p=p->next;
}
cout<<endl;
delete p;
delete q;
return 0;
}
//
#include<iostream>
#include<stdlib.h>
using namespace std;
typedef struct LNode{
int data;
struct LNode *next;
struct LNode *pre;
};
int main(){
//
LNode *head=new LNode;
head->data=NULL;
head->next=NULL;
head->pre=NULL;
int n;
LNode *p=head;
while(cin>>n&&n){
LNode *q=new LNode;
q->data=n;
q->next=NULL;
q->pre=NULL;
p->next=q;
q->pre=p;
p=q;
}
/*
while(cin>>n&&n){
LNode *q=new LNode;
q->data=n;
q->next=NULL;
q->pre=NULL;
if(p->next!=NULL){ //
q->next=p->next;
q->pre=p;
p->next->pre=q;
p->next=q;
p=q;
}
else{
p->next=q;
q->pre=p;
p=q;
}
p=head;
}
*/
p=head->next;
while(p!=NULL){
cout<<p->data<<" ";
p=p->next;
}
cout<<endl;
cin.ignore();
cout<<" :"<<endl;
cin>>n;
LNode *r;
p=head->next;
while(p->next!=NULL){
if(p->data==n){
r=p;
p->pre->next=p->next;
p->next->pre=p->pre;
delete r;
break;
}
else
p=p->next;
}
if(p->next==NULL){
r=p;
p->pre->next=NULL;
delete r;
}
p=head->next;
while(p!=NULL){
cout<<p->data<<" ";
p=p->next;
}
cout<<endl;
delete p;
system("pause");
return 0;
}
//
#include<iostream>
using namespace std;
typedef struct LNode{
int data;
struct LNode *next;
};
int main(){
//
LNode *head=new LNode;
head->data=NULL;
head->next=head;
LNode *p=head;
int n;
while(cin>>n){
if(n==0){
LNode *q=new LNode;
q->data=n;
q->next=NULL;
p->next=q;
q->next=head;
break;
}
else{
LNode *q=new LNode;
q->data=n;
q->next=NULL;
p->next=q;
p=q;
}
}
/*
while(cin>>n&&n){
LNode *q=new LNode;
q->data=n;
q->next=NULL;
if(p->next==head){
p->next=q;
q->next=head;
}
else{
q->next=p->next;
p->next=q;
}
}
*/
p=head->next;
while(p!=head){
cout<<p->data<<" ";
p=p->next;
}
cout<<endl;
cout<<" :"<<endl;
cin>>n;
p=head->next;
LNode *q=head;
LNode *r;
while(p->next!=NULL){
if(p->data==n){
r=p;
q->next=p->next;
delete r;
break;
}
else{
q=p;
p=p->next;
}
}
if(p->next==NULL){
r=p;
q->next=head;
}
p=head->next;
while(p!=head){
cout<<p->data<<" ";
p=p->next;
}
cout<<endl;
delete p;
delete q;
return 0;
}
//
#include<iostream>
using namespace std;
typedef struct LNode{
int data;
struct LNode *next;
struct LNode *pre;
};
int main(){
//
LNode *head=new LNode;
head->data=NULL;
head->next=head;
head->pre=head;
LNode *p=head;
int n;
while(cin>>n){
LNode *q=new LNode;
q->data=n;
q->next=NULL;
q->pre=NULL;
if(n==0){
p->next=q;
q->pre=p;
q->next=head;
head->pre=q;
break;
}
else{
p->next=q;
q->pre=p;
p=q;
}
}
/*
while(cin>>n&&n){
LNode *q=new LNode;
q->data=n;
q->next=NULL;
q->pre=NULL;
if(p->next==head&&p->pre==head){
p->next=q;
q->pre=p;
q->next=head;
head->pre=q;
}
else{
q->next=p->next;
q->pre=p;
p->next->pre=q;
p->next=q;
}
p=head;
}
*/
p=head->next;
while(p!=head){
cout<<p->data<<" ";
p=p->next;
}
cout<<endl;
cout<<" :"<<endl;
cin>>n;
p=head->next;
LNode *r;
while(p->next!=head){
if(p->data==n){
r=p;
p->pre->next=p->next;
p->next->pre=p->pre;
delete r;
break;
}
else
p=p->next;
}
if(p->next==head){
r=p;
p->pre->next=head;
head->pre=p->pre;
delete r;
}
p=head->next;
while(p!=head){
cout<<p->data<<" ";
p=p->next;
}
cout<<endl;
delete p;
return 0;
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
【AWS】 S3 Glacier 아카이브 삭제에서 볼트 삭제 (Win)부정적인 유산을 정리하기 위해 어쩔 수 없이 AWS를 명령행에서 조작한 기록입니다. 설치 프로그램을 다운로드하고 설치하기만 하면 됩니다. 내 경우에는 이미 여러 사용자가 있었으므로 전체 액세스 권한이 부여 된 사용자...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.