C언어 4

[C언어] 퀵정렬 함수 qsort

⚠️ 내맘대로하는 설명이기 때문에 비합리적 진행과 근거없는 추론이 있을 수 있습니다!⚠️ 오늘은 qsort라고도 부르는 퀵정렬에 대해서 알아볼거다. qsort는 배열을 순서대로 정렬하는 기능을 한다. 당연히 숫자도 가능하고, 문자도 가능하다. 그럼 어떨때 사용할까? 무작위로 입력을 받은 배열에서 내가 원하는 값을 찾아낼때 정렬을 한 후 이진탐색을 한다거나, 사전순 출력을 할때 주로 사용한다. qsort는 헤더파일 에서 제공하는 함수이다. 인자는 총 4개를 받는다. void qsort (void *base, size_t nel, size_t width, int (*compare)(const void *, const void *) base는 정렬하고자 하는 배열 nel은 정렬하고자 하는 배열의 크기 widt..

[C언어] 백준 1991번 : 트리 순회 <Silver 5>

⚠️ 내맘대로 작성한 코드이기 때문에 비합리적 진행과 근거없는 추론이 있을 수 있습니다!⚠️ https://www.acmicpc.net/problem/1991 1991번: 트리 순회 첫째 줄에는 이진 트리의 노드의 개수 N(1 ≤ N ≤ 26)이 주어진다. 둘째 줄부터 N개의 줄에 걸쳐 각 노드와 그의 왼쪽 자식 노드, 오른쪽 자식 노드가 주어진다. 노드의 이름은 A부터 차례대로 알파 www.acmicpc.net Code #include #include // 구조체 설정 typedef struct Node{ char data; struct Node *left; struct Node *right; }node; // 노드 생성 node *makeNode(char ch){ node *nd = (node*)ma..

Bakejoon/Silver 2022.03.06

[C언어] 백준 1021번 : 회전하는 큐 <Silver 3>

⚠️ 내맘대로 작성한 코드이기 때문에 비합리적 진행과 근거없는 추론이 있을 수 있습니다 ⚠️ 문제 링크 : https://www.acmicpc.net/problem/1021 1021번: 회전하는 큐 첫째 줄에 큐의 크기 N과 뽑아내려고 하는 수의 개수 M이 주어진다. N은 50보다 작거나 같은 자연수이고, M은 N보다 작거나 같은 자연수이다. 둘째 줄에는 지민이가 뽑아내려고 하는 수의 위치가 www.acmicpc.net Code #include void reset_arr(int N, int array[]){ for(int i = 1; i < N + 1; i++){ // 배열 초기화 array[i] = i; } } int main() { int arr[51] = {0,}; int size = 0; // 총..

Bakejoon/Silver 2022.02.20

[C언어] 백준 20291번 : 파일정리 <Silver 3>

⚠️ 내맘대로 작성한 코드이기 때문에 비합리적 진행과 근거없는 추론이 있을 수 있습니다 ⚠️ 문제 링크 : https://www.acmicpc.net/problem/20291 20291번: 파일 정리 친구로부터 노트북을 중고로 산 스브러스는 노트북을 켜자마자 경악할 수밖에 없었다. 바탕화면에 온갖 파일들이 정리도 안 된 채 가득했기 때문이다. 그리고 화면의 구석에서 친구의 메시지를 www.acmicpc.net Code #include #include #include // qsort를 위한 compare함수 int compare(const void *a, const void *b) { return strcmp((char *)a, (char *)b); } int main() { char result[5000..

Bakejoon/Silver 2022.02.19