본문 바로가기

공부11

[C++] sort (정렬) 개인 공부 후 자료를 남겨놓기 위한 목적이므로, 생략되거나 오류가 있을 수 있음을 알립니다. 이번 포스팅에서는 정렬에 대한 근본적인 알고리즘보다, C++에서 정렬을 하는 메소드를 어떻게 사용하고, 해당 메소드에 대한 옵션을 어떻게 설정해야 하는지 적어보려 한다. sort() 우선 sort 메소드를 사용하기 위해서는 코드의 헤더 부분에 algorithm 라이브러리를 추가해주어야 한다. 해당 헤더를 추가했다면, 이제 main과 같은 함수에서 정렬과 관련된 메소드들을 사용할 수 있게 된다. C++에서는 내부적으로 해당 값이 32개 이하일 때는 삽입정렬을 사용하고, 32개 초과일 경우에는 힙정렬과 퀵소트를 사용한다고 한다. (대략 O(nlogn) 정도의 시간복잡도가 걸린다고 함.) 기본 사용법 다음과 같은 in.. 2022. 6. 25.
[C++] STL vector 개인 공부 후 자료를 남겨놓기 위한 목적이므로, 생략되거나 오류가 있을 수 있음을 알립니다. C++의 표준 템플릿 라이브러리 중 하나인 에 대해서 알아보도록 하자. vector란? 배열과 같이 데이터들을 순차적으로 보관하는 컨테이너이다. 간단히 말해, C++에서 일반적인 배열은 크기를 지정해주고 데이터를 담아주어야 하지만, vector의 경우에는 일반적인 배열과 다르게 가변적으로 길이가 조정이 가능하며, 임의의 원소를 빠르게 처리할 수 있다. 어떻게 사용할까? 코드의 헤더부분에 #include 를 입력하여 사용한다. 또한 vector "변수명"; 을 입력하여 해당 vector를 선언할 수 있다. vector의 여러 특징 배열 미리 만들기 vector 또한 일반적인 배열들과 마찬가지로 크기를 미리 지정하여.. 2022. 6. 23.
[C++] String 클래스 개인 공부 후 자료를 남겨놓기 위한 목적이므로, 생략되거나 오류가 있을 수 있음을 알립니다. C++이 제공하는 STL 중 하나인 string에 대해서 적어보았다. 일단 공부하는대로 추가할 예정이므로, 빠진 내용이 있을 수 있는 점 양해바랍니다. string이란? C++ STL에서 제공하는 클래스로, string (문자열)을 다루는 클래스이다. string을 쓰기 전에는 char 자료형을 사용하여 문자열을 다루었다면, 이제는 문자열을 string으로 선언하고, 마지 하나의 다른 자료형을 사용하는 것처럼 다룰 수 있게 된다. 또한, string의 경우 char와 다르게 문자열의 끝에 "\0" (null) 이 들어가지 않으며 문자열의 길이를 동적으로 다룰 수 있다. string 클래스 사용법 string을 사.. 2022. 6. 22.