본문 바로가기
반응형

시간초과4

매크로(Macro) 함수 - 코딩 테스트 시간 단축을 위한 마법 코딩테스트에서 실행시간을 단축시키는 것은 매우 중요합니다. C언어를 사용한다면 매크로(Macro)를 활용하면 코드의 길이를 줄이고 실행 속도를 높일 수 있습니다. 이번 글에서는 코딩테스트에서 자주 쓰이는 매크로 함수를 소개합니다. 0. 매크로 사전학습아래 링크에 C언어 매크로에 대한 기본 개념을 정리했습니다. 개념, 원리, 주의점, 예시코드 등 필요한 모든 개념을 총 정리했습니다. 매크로를 사용하면 왜 시간이 단축되는지에 대한 설명도 포함되어 있으니 미리 보고 오시기를 강력 추천드립니다!! 2024.12.22 - [C 언어] - C언어 매크로(Macro)의 모든 것 - #define, 개념, 동작원리, 성능, 장점, 다양한 예시, 주의사항 C언어 매크로(Macro)의 모든 것 - #define, 개념, .. 2024. 12. 22.
버킷(Bucket) 알고리즘 - 코딩테스트에서 시간을 단축하는 비법(시간복잡도, C언어,Java,Python 예시코드) 코딩테스트 문제를 풀 때, 효율적인 자료구조와 알고리즘을 선택하는 것은 매우 중요합니다. 오늘은 버킷 알고리즘에 대해 알아보고, 이를 활용하여 문제를 빠르게 해결하는 방법을 공유드리겠습니다. 버킷 알고리즘의 개념, 동작 원리, 시간 복잡도, 장단점, 그리고 대표적인 문제와 코드 예제를 살펴보겠습니다.1. 버킷 알고리즘이란?버킷 알고리즘(Bucket Algorithm)은 데이터를 일정한 범위로 나누어 처리하는 방식입니다. 데이터를 미리 분할하여 필요한 범위 내에서만 계산하거나 검색하도록 최적화된 방법으로, 흔히 범위 쿼리 문제나 데이터 그룹화 문제에서 사용됩니다. 2. 동작 원리 버킷 생성: 데이터를 일정한 크기의 범위로 나눕니다. 이 범위를 버킷이라고 합니다.데이터 분배: 각 데이터를 해당하는 버킷에 삽.. 2024. 12. 20.
BFS(너비 우선 탐색, Breadth-First Search) 알고리즘 - C언어, Java, Python 예시코드 포함, 시간복잡도 BFS(Breadth-First Search)는 그래프나 트리에서 널리 사용되는 탐색 알고리즘으로, 시작 정점에서 가까운 노드부터 탐색을 진행합니다. 경로를 찾거나 최단 거리를 계산하는 데 유용하며, 다양한 문제 해결에 활용됩니다. 1. BFS의 개념BFS는 큐(Queue) 자료구조를 기반으로 작동하며, 그래프의 각 레벨을 순차적으로 탐색합니다. 그래프의 각 정점을 방문하면서 모든 인접한 정점을 차례대로 탐색하므로, 깊이보다는 너비를 우선시합니다. 2. BFS의 동작 원리시작 정점을 큐에 삽입하고 방문 처리합니다.큐에서 정점을 하나씩 꺼내어 해당 정점의 모든 인접 정점을 탐색합니다.인접 정점 중 방문하지 않은 정점을 큐에 삽입하고 방문 처리합니다.큐가 빌 때까지 위 과정을 반복합니다.동작 구조도다음은 B.. 2024. 12. 19.
STL set 구조체활용(1) - 사용법(set은 만능이다?) 이번 글에서는 set의 기본 사용법을 알아보도록 하겠습니다. 그리고 마지막에는 Set을 문제 풀이에서 어떻게 사용하면 좋을지 말씀드리겠습니다. 1. set이란?set은 이진탐색트리(Binary Search Tree, BST) 구조로 구성되어 있습니다. 실제로는 BST 중 Red-Black Tree로 구현되어 있습니다. 그래서 최악의 경우에도 삽입,삭제,조회가 O(logN)만에 가능합니다.참고로 이진탐색 트리는 항상 우선순위가 "왼쪽자식노드이진탐색 트리의 내부 원소들은 항상 정렬된 상태를 유지합니다. Set의 경우 우선순위가 같은 원소들은 존재할 수 없습니다. 모든 원소는 유일합니다!! 기억해야할 내용을 요약하자면,1) set은 삽입, 삭제, 조회가 O(logN)만에 가능합니다.2) set의 모든 원소는 .. 2023. 3. 13.
반응형