-
queueC연습 2021. 1. 17. 11:50
#include #include #define MAX_SIZE 10 typedef int element; typedef struct { int front; int rear; element data[MAX_SIZE]; } queuetype; void init_queue(queuetype *q) { q->front = -1; q->rear = -1; } int underflow(queuetype *q) { return (q->rear == q->front); } int overflow(queuetype *q) { return (q->rear == MAX_SIZE - 1); } int queue_attach(queuetype *q, int n) { if (overflow(q) == 1) return 0; el..
-
이진 검색 트리C연습 2021. 1. 17. 11:48
#include #include #define MAX_NODE_NUM 10000 typedef int element; typedef struct tree { element key; struct tree *left, *right; }tree; tree *new_node(int item) { tree *temp = (tree *)malloc(sizeof(tree)); temp->key = item; temp->left = temp->right = NULL; return temp; } tree *insert_node(tree *node, int key) { if (node == NULL) return new_node(key); if (key key) node->left = insert_node(..
-
원형큐_소수고리C연습 2021. 1. 17. 11:45
#include #include #define MAX_QUEUE_SIZE 16 typedef int element; typedef struct { element data[MAX_QUEUE_SIZE]; int front, rear; } QueueType; void error(char *message) { fprintf(stderr, "%s\n", message); exit(1); } void init_queue(QueueType *q) { q->front = 0; q->rear = 0; } int is_empty(QueueType *q) { return (q->front == q->rear); } int is_full(QueueType *q) { return (q->front == (q->rear + 1)..
-
연결 리스트C연습 2021. 1. 17. 11:41
#include #include typedef int element; typedef struct { element data; struct ListNode *link; } ListNode; void error(char *message) { fprintf(stderr, "%s\n", message); exit(1); } ListNode* insert_first(ListNode *head, int value) { ListNode *p = (ListNode *)malloc(sizeof(ListNode)); p->data = value; p->link = head; head = p; return head; } ListNode* insert(ListNode *head, int value) { ListNode *p ..
-
stack 괄호 짝 맞추기C연습 2021. 1. 17. 11:39
#include #include #include typedef int element; typedef struct { element *data; int capacity; int top; } stacktype; void init_stack(stacktype *s, int n) { s->top = -1; s->capacity = n; s->data = (element *)malloc(s->capacity * sizeof(element)); } int is_empty(stacktype *s) { return (s->top == -1); } int is_full(stacktype *s) { return (s->top == (s->capacity - 1)); } void push(stacktype *s, eleme..
-
stackC연습 2021. 1. 17. 11:36
#include #include #include #define UF "UNDERFLOW" #define OF "OVERFLOW" /* 경고창을 저장하는 변수 생성 typedef struct { char er_conuter[10][100]; char *of = 'overflow'; char *uf = 'underflow'; } error; 첫 줄 입력 -> 스택의 크기 결정 다음 줄 입력(n) -> push or pop 결정 if push if (n == 0) 다음줄에 값을 입력 후 스택에 넣는다. else (n == 1) if (if_empty면) underflow 저장?? 다음줄에 값을 뺸다 else braak; 데이터 입력이 모두 끝난 후 스택의 상태 (top to bottom) 출력한다. */ ty..
-
수열의 합C연습 2021. 1. 17. 11:19
/* 수열의 합: N 100) { a = -1; return; } } } void show() { if (a < 0) { cout