데이터 구조 실험의 링크 9: 양 방향 링크
2821 단어 데이터 구조 - 선형 표
Time Limit: 1000MS Memory limit: 65536K
제목 설명
단 방향 체인 시 계 를 배 웠 습 니 다. 우 리 는 문 제 를 해결 하 는 능력 이 하나 더 생 겼 습 니 다. 단일 체인 시 계 는 하나의 지침 을 이용 하여 메모리 에서 다음 위 치 를 찾 을 수 있 습 니 다. 이것 은 쉽게 끊 어 지지 않 는 체인 입 니 다.그러나 단일 체인 시 계 는 되 돌 릴 수 없 는 약점 이 있다.예 를 들 어 링크 에 두 개의 노드 A, B 가 있 는데 그들의 관 계 는 B 가 A 의 후계 이다. A 가 B 를 가리 키 면 A 를 통 해 B 를 쉽게 찾 을 수 있 지만 B 에서 A 를 찾 을 수 없다.간단 한 생각 으로 이 문 제 를 쉽게 해결 할 수 있다. 양 방향 링크 를 만 드 는 것 이다.양 방향 링크 에서 A 는 노드 B 를 가리 키 는 지침 이 있 고 B 는 A 를 가리 키 는 지침 이 있다.이렇게 하면 체인 헤더 노드 의 위치 에서 전체 링크 의 모든 노드 를 옮 길 수 있 을 뿐만 아니 라 링크 의 끝 노드 부터 모든 노드 를 옮 길 수 있다.주어진 열 데이터 에 대해 주어진 순서에 따라 양 방향 링크 를 만 들 고 키워드 에 따라 해당 하 는 노드 를 찾 아 이 노드 의 전구 노드 키워드 와 후계 노드 키 워드 를 출력 합 니 다.
입력
첫 번 째 줄 의 두 개의 정수 n (노드 개 수 를 대표 함), m (찾 으 려 는 키 의 개 수 를 대표 함).두 번 째 줄 은 n 개 수 (n 개 수 는 중복 되 지 않 음) 로 이 n 개 수 를 이용 하여 양 방향 링크 를 만 듭 니 다.다음은 m 개의 키워드 가 있 습 니 다. 한 줄 씩 차지 합 니 다.
출력
주어진 모든 키워드 에 대해 이 키워드 의 전구 노드 키워드 와 후계 노드 키 워드 를 출력 합 니 다.주어진 키워드 가 전구 나 후계 가 없 으 면 출력 하지 않 습 니 다.메모: 주어진 키워드 마다 출력 이 한 줄 을 차지 합 니 다. 한 줄 의 출력 데이터 사이 에 빈 칸 이 있 습 니 다. 줄 의 첫 번 째, 줄 의 끝 에 빈 칸 이 없습니다.
예제 입력
10 31 2 3 4 5 6 7 8 9 0
3
5
0
예제 출력
2 4
4 6
9
제시 하 다.
#include
#include
typedef struct node {
int data;
struct node *prior,*next;
}Node;
Node *creatList(int n){ //
Node *head,*p,*tail;
int i;
head=(Node *)malloc(sizeof(Node ));
head->prior=NULL;
head->next=NULL;
tail=head;
for(i=0;idata);
tail->next=p;
p->prior=tail;
p->next=NULL;
tail=p;
}
return head;
}
void main()
{
int m,n,i,x;
Node *head,*r;
scanf("%d",&n);
scanf("%d",&m);
head=creatList(n);
for(i=0;inext;
scanf("%d",&x);
while(r)
{
if(r->data==x)
break;
r=r->next;
}
if(r->prior==head||r->next==NULL)//
{
if(r->prior==head&&r->next!=NULL)// ,
{
printf("%d
",r->next->data);//
}
else if(r->prior!=head&&r->next==NULL)// ,
{
printf("%d
",r->prior->data);//
}
else
{
}
}
else
{
printf("%d %d
",r->prior->data,r->next->data);
}
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
추가 삭제 검사 삽입 선형 표 (1)또 좋 은 하루 가 끝 났 습 니 다. 작업 을 재촉 하 는 하루 하루 가 그렇게 고 통 스 럽 지 않도록 자기 전에 최근 에 쓴 초기 화, 삭제, 검사, 지 정 된 위치 읽 기, 수정, 요 소 를 삽입 하여 지 정...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.