PTA 데이터 구조와 알고리즘 문제집(중국어) 4-1 단일 체인 테이블 역전(20점)

1152 단어
          ,         。

함수 인터페이스 정의:
List Reverse( List L );

여기서 List 구조 정의는 다음과 같습니다.
typedef struct Node *PtrToNode;
struct Node {
    ElementType Data; /*        */
    PtrToNode   Next; /*            */
};
typedef PtrToNode List; /*         */
L는 단일 체인 테이블을 정하고 함수Reverse는 역전된 체인 테이블로 되돌아간다.
심판 테스트 프로그램의 예:
#include 
#include 

typedef int ElementType;
typedef struct Node *PtrToNode;
struct Node {
    ElementType Data;
    PtrToNode   Next;
};
typedef PtrToNode List;

List Read(); /*        */
void Print( List L ); /*        */

List Reverse( List L );

int main()
{
    List L1, L2;
    L1 = Read();
    L2 = Reverse(L1);
    Print(L1);
    Print(L2);
    return 0;
}

/*            */

샘플 입력:
5
1 3 4 5 2

출력 예제:
1
2 5 4 3 1

프로그램 코드:
List Reverse( List L)
{
	List p,q;
	p=L;
        L=NULL;
	while(p)
	{
		q=p;
		p=p->Next;
		q->Next=L;
		L=q;
	}
	return L;
}

좋은 웹페이지 즐겨찾기