프로그래밍/C 5

C언어 큐(Queue)

자료구조 중 큐입니다. 큐는 FIFO(First In First Out)구조로 먼저 들어가면 먼저 나온다 입니다. 스택에선 Push, Pop이었지만 큐에서는 Enqueue, Dequeue로 사용합니다. 큐에는 선형으로 되어있는 선형 큐와 원형 큐가 있습니다. (이부분은 추후에 작성토록 하겠습니다.) 배열로 큐입니다. #include #define MAX_QUEUE_SIZE 100 int queue[MAX_QUEUE_SIZE]; int front = 0; int rear = 0; void enqueue(int item) { if ((rear + 1) % MAX_QUEUE_SIZE == front) { printf("Queue is full\n"); } else { rear = (rear + 1) % MAX..

프로그래밍/C 2023.02.11

C언어 스택

스택은 선형데이터 구조로 LIFO(Last In First Out)의 형태를 나타냅니다. 데이터를 입력할 때는 Push, 꺼낼 때는 Pop이라고 합니다. #include #include #define MAX_SIZE 100 // Stack structure struct Stack { int data[MAX_SIZE]; int top; }; // Initialize stack void init(struct Stack *s) { s->top = -1; } // Push element to stack void push(struct Stack *s, int x) { if (s->top == MAX_SIZE - 1) { printf("Error: stack overflow\n"); return; } s->data..

프로그래밍/C 2023.01.29

[프로그래머스] 숫자 찾기 - C

https://school.programmers.co.kr/learn/courses/30/lessons/120904?language=c 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 주어진 값에서 특정 수의 위치를 찾는 문제입니다. 7의 개수 구하기와 비슷한 문제입니다. #include #include #include int solution(int num, int k) { int answer = -1; int idx = 0; while(num != 0){ if(num % 10 == k) answer = idx; idx++; num /= 10; } if(a..

프로그래밍/C 2023.01.11

[프로그래머스] 약수 구하기 - C

https://school.programmers.co.kr/learn/courses/30/lessons/120897?language=c 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 주어진 숫자에 대해 약수를 구하는 문제입니다. malloc이라는 동적할당을 사용해서 하라고 하군요 약수의 갯수는 최대 주어진 수의 절반을 넘지 않기 때문에 (n/2 * sizeof())로 할당했습니다. #include #include #include int* solution(int n) { // return 값은 malloc 등 동적 할당을 사용해주세요. 할당 길이는 상황에 ..

프로그래밍/C 2023.01.11

[프로그래머스] 7의 개수 - C

https://school.programmers.co.kr/learn/courses/30/lessons/120912?language=c 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 주어진 배열의 원소중 7의 갯수를 세는 문제입니다. 77이라는 원소가 있으면 2개가 되는거죠 각 원소를 10으로 나눠서 나머지값을 확인하면 됩니다. #include #include #include // array_len은 배열 array의 길이입니다. int solution(int array[], size_t array_len) { int answer = 0; for(int ..

프로그래밍/C 2023.01.11
반응형