본문 바로가기

전체 글10

타입 캐스팅을 활용해서 성능 개선하기 이번 글에서는 타입 캐스팅을 활용해서 코드 실행시간을 단축시키는 스킬에 대해서 알아보도록 하겠습니다. 1억개의 char형 배열을 0으로 초기화해야하는 상황이라고 가정하겠습니다. 보통 아래 코드 처럼 1억개의 원소를 하나하나 초기화 하는 방식으로 구현할 것입니다. #include #include char arr[100000001]; int main(void) { clock_t start = clock(); for (int i = 0; i < 100000000; ++i) {//1억개 배열 초기화 arr[i] = 0; } clock_t end = clock(); printf("소요시간 : %d\n", end - start);//ms단위 return 0; } 이 코드를 실행시켜보면 제 컴퓨터 환경에서는 약 25.. 2023. 8. 13.
링크드 리스트 성능 개선 2023.04.20 - [자료구조/LINKED LIST 링크드 리스트] - 1. 링크드 리스트(Linked List) - 더블 링크드 리스트(메모리 풀 방식) 1. 링크드 리스트(Linked List) - 더블 링크드 리스트(메모리 풀 방식) 이번 글에서는 링크드 리스트 중 더블 링크드 리스트에 대해서 알아보고, 실제로 C언어 코드로 구현까지 해보도록 하겠습니다. 일반적으로 동적할당을 이용한 구현 코드가 널리 알려져 있지만, best-coding.tistory.com 이전 글에서는 링크드 리스트가 무엇인지 알아보고 실제로 더블 링크드 리스트를 메모리 풀 방식으로 구현해봤습니다. 이번 글에서는 링크드 리스트의 성능을 개선할 수 있는 방법을 알아보도록 하겠습니다. (1) 특정 노드에 빠르게 접근하기 링크드 .. 2023. 4. 21.
1. 링크드 리스트(Linked List) - 더블 링크드 리스트(메모리 풀 방식) 이번 글에서는 링크드 리스트 중 더블 링크드 리스트에 대해서 알아보고, 실제로 C언어 코드로 구현까지 해보도록 하겠습니다. 일반적으로 동적할당을 이용한 구현 코드가 널리 알려져 있지만, 저는 메모리 풀 방식을 활용한 코드를 작성하도록 하겠습니다(왜냐하면 알고리즘 문제 풀이시에는 메모리 풀 방식이 훨씬 시간이 적게 걸리기 때문입니다.) 자세한 내용은 밑에서 설명드리도록 하겠습니다. 링크드 리스트의 경우 직접 구현시에 포인터와 구조체를 사용합니다. "포인터, 구조체, 구조체 포인터"가 무엇인지 잘 모르시는 분들을 해당 내용을 먼저 공부하시고 다시 이 글을 보시면 훨씬 좋을 것 같습니다! (1) 링크드 리스트란? 링크드 리스트는 위 그림처럼 여러 노드들을 연결한 자료구조입니다. 저장하는 데이터 하나의 단위를 .. 2023. 4. 20.
STL set 구조체 활용(4) - 특정 원소에 빠르게 찾기 이전글 2023.03.30 - [STL] - STL set 구조체 활용(3) - set에 구조체 포인터 담기 STL set 구조체 활용(3) - set에 구조체 포인터 담기 이전 글 2023.03.13 - [STL] - STL set 구조체활용(1) - 사용법(set은 만능이다?) STL set 구조체활용(1) - 사용법(set은 만능이다?) 이번 글에서는 set의 기본 사용법을 알아보도록 하겠습니다. 그리고 마지막에 best-coding.tistory.com 2023.03.30 - [STL] - STL set 구조체 활용 (2)- 정렬 기준 바꾸기 STL set 구조체 활용 (2)- 정렬 기준 바꾸기 2023.03.13 - [STL] - STL set 구조체활용(1) - 사용법(set은 만능이다?) S.. 2023. 4. 3.
STL set 구조체 활용(3) - set에 구조체 포인터 담기 이전 글 2023.03.13 - [STL] - STL set 구조체활용(1) - 사용법(set은 만능이다?) STL set 구조체활용(1) - 사용법(set은 만능이다?) 이번 글에서는 set의 기본 사용법을 알아보도록 하겠습니다. 그리고 마지막에는 Set을 문제 풀이에서 어떻게 사용하면 좋을지 말씀드리겠습니다. 1. set이란? set은 이진탐색트리(Binary Search Tree, BST) best-coding.tistory.com 2023.03.30 - [STL] - STL set 구조체 활용 (2)- 정렬 기준 바꾸기 STL set 구조체 활용 (2)- 정렬 기준 바꾸기 2023.03.13 - [STL] - STL set 구조체활용(1) - 사용법(set은 만능이다?) 이전 글에서는 전반적인 s.. 2023. 3. 30.