#include #include typedef struct node{ int data; struct node *link; }Node; Node* createNode(int num) { Node *p; p=(Node*)malloc(sizeof(Node)); p->link=NULL; p->data=num; return p; } //이전과 동일. Node* reverse(Node *head) { Node *res,*tmp,*p=head; //결과 저장 res, 임시 저장 tmp //head를 따라가는 포인터 p res=tmp=NULL; while(p!=NULL) { tmp=res;//우선 뒤집을 포인터의 헤드를 따라간다. res=p;//뒤집을 포인터의 헤드로 간다. p=p->link;//뒤집을 포인터의 접근 ..
#include #include //malloc 함수가 들어있는 헤더파일 typedef struct node{ int data; struct node* link;//다음 데이터를 담을 링크 포인터 변수 }Node; Node* CreateNode(int num){ Node *p; p=(Node*)malloc(sizeof(Node));//새로운 노드를 메모리 할당함. p->data=num; //새로운 노드의 데이터를 파라미터에 주어진 값으로 함. p->link=NULL; //새로운 노드의 링크를 NULL로 할당 return p; //새로운 노드의 주소 리턴 } int main(void) { Node *p, *head; //연결 리스트의 첫번째 노드인 head 변수와 접근을 위한 p 포인터 변수 head=p=..