반응형

연결리스트 13

단일 연결리스트 - 역순 보관(가장 최근에 보관한 데이터가 맨 앞), C언어 소스

단일 연결리스트 - 역순 보관(가장 최근에 보관한 데이터가 맨 앞), C언어 소스 //단일 연결리스트 - 역순 보관(가장 최근에 보관한 데이터가 맨 앞)//노드 정의, 초기화, 추가, 삭제, 검색, 전체 출력, 해제#include #include typedef struct Node//노드 정의{ int data;//데이터 struct Node *next;//링크(다음 노드의 위치 정보)}Node; void InitList(Node **phead);//초기화void AddData(Node **phead, int data);//데이터 추가void Remove(Node **phead, Node *now);//노드 삭제Node *Find(Node *seek, int data);//노드 검색void ViewAll..

큐 - 연결리스트 이용, C언어 소스

큐 - 연결리스트 이용, C언어 소스 //큐 - 연결리스트 이용#include #include #include typedef struct Node //노드 정의{ int data; struct Node *next;}Node; #define NEXT(index,QSIZE) ((index+1)%QSIZE) //원형 큐에서 인덱스를 변경하는 매크로 함수 typedef struct Queue //Queue 구조체 정의{ Node *front; //맨 앞(꺼낼 위치) Node *rear; //맨 뒤(보관할 위치) int count;//보관 개수}Queue; void InitQueue(Queue *queue);//큐 초기화int IsEmpty(Queue *queue); //큐가 비었는지 확인void Enqueue(..

스택 - 연결리스트로 구현, C언어 소스

스택 - 연결리스트로 구현, C언어 소스 //스택 - 연결리스트로 구현 #include #include typedef struct Node //노드 정의 { int data; struct Node *next; }Node; typedef struct Stack //Stack 구조체 정의 { Node *top; //맨 앞 노드(가장 최근에 생성한 노드) }Stack; void InitStack(Stack *stack);//스택 초기화 int IsEmpty(Stack *stack); //스택이 비었는지 확인 void Push(Stack *stack, int data); //스택에 보관 int Pop(Stack *stack); //스택에서 꺼냄 int main(void) { int i; Stack stack; ..

반응형