PTA: 6 - 5 싱글 체인 테이블 짝수 노드 삭제 (20 점)
2542 단어 데이터 구조 제목 집합
데이터 구조 제목 집합
단일 체인 테이블 짝수 노드 삭제
이 문 제 는 두 가지 함 수 를 실현 하고 읽 은 데 이 터 를 단일 체인 표 로 저장 하 며 링크 의 쌍 수 치 를 삭제 해 야 합 니 다.링크 노드 정 의 는 다음 과 같 습 니 다.
struct ListNode {
int data;
struct ListNode *next;
};
함수 인터페이스 정의:
struct ListNode *createlist();
struct ListNode *deleteeven( struct ListNode *head );
함수 createlist 는 표준 입력 에서 일련의 정 수 를 읽 고 읽 는 순서에 따라 단일 체인 표를 만 듭 니 다.− 1 까지 읽 었 을 때 입력 이 끝 났 음 을 표시 하고 함 수 는 단일 체인 표 두 결점 을 가리 키 는 지침 을 되 돌려 야 합 니 다.함수 deleteeven 은 싱글 체인 시트 head 의 짝수 값 의 결산 점 을 삭제 하고 결과 체인 시트 의 헤드 포인터 로 되 돌려 줍 니 다.심판 테스트 프로그램 샘플:
#include
#include
struct ListNode {
int data;
struct ListNode *next;
};
struct ListNode *createlist();
struct ListNode *deleteeven( struct ListNode *head );
void printlist( struct ListNode *head )
{
struct ListNode *p = head;
while (p) {
printf("%d ", p->data);
p = p->next;
}
printf("
");
}
int main()
{
struct ListNode *head;
head = createlist();
head = deleteeven(head);
printlist(head);
return 0;
}
/* */
입력 예시:
1 2 2 3 4 5 6 7 -1
출력 예시:
1 3 5 7
문제 풀이:
struct ListNode *createlist()
{
struct ListNode *head,*p1,*tail;
int num;
head=(struct ListNode *)malloc(sizeof(struct ListNode));
p1=tail=(struct ListNode *)malloc(sizeof(struct ListNode));
p1->next=tail->next=head->next=NULL;
while(1)
{
scanf("%d",&num);
if(num!=-1)
{
p1->data=num;
if(head->next==NULL)
{
head->next=p1;
}
else
{
tail->next=p1;
tail=p1;
}
p1=(struct ListNode *)malloc(sizeof(struct ListNode));
p1->next=NULL;
}
else
break;
}
return head;
}
struct ListNode *deleteeven(struct ListNode *head)
{
struct ListNode *num,*p;
p=head;
num=head->next;
while(num!=NULL)
{
if(num->data%2==0)
{
p->next=num->next;
}
else
p=p->next;
num=num->next;
}
return head->next;
}
1. , head , ,
( head NULL,head->next
NULL , )。
2. head ( head NULL ,
)。
3. , (
,eg: ), 。
4. , 。 ,
, ,
。( )
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
PTA: 6 - 5 싱글 체인 테이블 짝수 노드 삭제 (20 점)빅 뱅 반기 데이터 구조 데이터 구조 제목 집합 단일 체인 테이블 짝수 노드 삭제 이 문 제 는 두 가지 함 수 를 실현 하고 읽 은 데 이 터 를 단일 체인 표 로 저장 하 며 링크 의 쌍 수 치 를 삭제 해 야 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.