[C언어] (8) 썸네일형 리스트형 [c언어] FIFO(First in First Out) Linked Queue(연결리스트 큐)구현 앞에서 배운 Linked List를 활용해 Queue를 구현하였습니다. Queue의 핵심 개념은 FIFO(First In First Out)입니다. 웬만하면 그림이 나와있는 개념서등을 보면서 학습을 권합니다. 그림을 머릿속에 떠올리면서 구현하면 훨씬 개념을 이해하기 쉽더라구요 #pragma once #ifndef __LB_QUEUE_H__ #define __LB_QUEUE_H__ #define TRUE 1 #define FALSE 0 typedef int Data; typedef struct _node { Data data; struct _node * next; }Node; typedef struct _lQueue { Node * front; Node * rear; }LQueue; typedef LQue.. [c언어] FIFO(First in First Out) circular Queue(원형큐)구현 안녕하세요 Docker입니다. Stack 다음인 Queue를 구현해보도록 하겠습니다. #ifndef __C_QUEUE_H__ #define __C_QUEUE_H__ #define TRUE 1 #define FALSE 0 #define Que_Len 100 typedef int Data; typedef struct __cQueue { int front; int rear; Data QueueArr[Que_Len]; }CQueue; typedef CQueue Queue; void QueueInit(Queue * pq); int QIsEmpty(Queue* pq); void Enqueue(Queue * pq, Data data); Data Dequeue(Queue * pq); Data QPeek(Queue * .. [c언어] FILO(First in Last Out) Stack Linked List로 구현 #ifndef __LB_STACK_H__ #define __LB_STACK_H__ #define TRUE 1 #define FALSE 0 typedef int Data; typedef struct _node { Data data; struct _node * next; }Node; typedef struct _listStack { Node * head; }ListStack; typedef ListStack Stack; void StackInit(Stack * pstack); int SIsEmpty(Stack * pstack); void SPush(Stack* pstack, Data data); Data SPop(Stack * pstack); Data SPeek(Stack * pstack); #endif /.. [c언어] FILO(First In Last Out) Stack 배열로 구현 안녕하세요 Docker입니다. 자료구조의 기본이죠, Stack을 C언어로 구현해보도록 하겠습니다. #ifndef __AB_STACK_H #define __AB_STACK_H__ #define TRUE 1 #define FALSE 0 #define STACK_LEN 100 typedef int Data; typedef struct _arrayStack { Data stackArr[STACK_LEN]; int topIndex; }ArrayStack; typedef ArrayStack Stack; void StackInit(Stack * pstack);//스택 초기화 int SIsEmpty(Stack * pstack);//스택이 비어있는지 확인 void SPuch(Stack * pstack, Data data.. [c언어] Node를 활용한 연결리스트 typedef struct _node { int data; struct _node * next;//다음껄로 이어지는 주소값을 _node안에 저장하겠다. } Node; //이를 편하게 Node라고 저장하겠다. int NodeCall() { Node * head = NULL; Node * tail = NULL; Node * cur = NULL; Node * newNode = NULL; int readData; while (1) { printf("자연수 입력"); scanf_s("%d", &readData); if (readData data = readData; newNo.. [c언어] scanf 오류!"error C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details."문제해결방법 안녕하세요 Docker입니다. C언어로 알고리즘 공부를 하다보면 자주 마주하는 scanf에러가 있습니다. 에러 메세지는 다음과 같습니다. "error C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details." scanf함수가 보안적으로 취약하다는 이유로 사용을 자제하라는 메세지입니다. ㅡㅡ 자제만 하면 되지, 왜 함수까지 멈추는건지;;; 가장 대중적인 해결 방법 두가지가 있습니다. 1. #define _CRT_SECURE_NO_WARNINGS 보안적 오류를 무.. [C언어]열혈 자료구조! 재귀함수 자료구조 예시입니다. #include int Recursive(int num) { if (num 알고리즘 공부 START! 몇년만인지.. 아마 알고리즘은 대학교 3학년까지?공부하다가 취업에서 방향을 틀면서 공부하지 않았으니, 거의 3~4년 만인것 같습니다. 사실은 겁이 났습니다. 코딩을 한다고 했던 녀석이 Hello World 부터 다시 시작해야한다는 사실이요. 그래도 용기를 내서 다시 한번 해보려고 합니다! 꾸준할진 모르겠지만 그래도 시작해보려합니다. 우선 자료구조시간에 공부했던 언어인 C언어로 알고리즘을 풀어 나가보도록 하겠습니다. 컴공의 교주 윤성우님의 열혈 자료구조 책을 가지고 알고리즘 문제 및 예시들을 적어보도록 하겠습니다. 그럼 START! 이전 1 다음