| #include <stdio.h> #include <stdlib.h> typedef struct _node {     int data;     struct _node *link; }_node; typedef struct _stack {     _node *top; }_stack; void init(_stack *s) {     s->top = NULL; } int is_empty(_stack *s) {     return (s->top == NULL); } void push(_stack *s, int data) {     _node *temp;     temp = (_node *)malloc(sizeof(_node));     temp->data = data;     temp->link = s->top;     s->top = temp; } int pop(_stack *s) {     int item;     if (is_empty(s))     {         printf("empty stack!\n");         return -1;     }     else     {         _node *temp;         temp = s->top;         item = temp->data;         s->top = s->top->link;         free(temp);         return item;     } } int peek(_stack *s) {     if (!is_empty(s))         return s->top->data; } void main() {     int i;     _stack s;     init(&s);     for (i = 1; i <= 5; i++)         push(&s, i);     printf("pop = %d\n",pop(&s));     printf("peek = %d\n", peek(&s));     printf("pop = %d\n", pop(&s)); } | cs | 
'NOTE > Algorithm' 카테고리의 다른 글
| 자료구조) Graph (0) | 2015.08.25 | 
|---|---|
| 자료구조) QuickSort (0) | 2015.08.25 | 
| 자료구조) linked_queue (0) | 2015.08.25 | 
| dovelet) maze 최단 거리 미로 (0) | 2015.08.25 | 
| uva_10074) Take the Land (0) | 2015.08.21 |