본문 바로가기

728x90

c++

(7)
[C++] 컨테이너 어댑터 Stack 컨테이너 어댑터란? 기존 컨테이너의 기능을 제한하거나 변형한 컨테이너를 만들어줍니다. STL의 컨테이너 어댑터 종류. 컨테이너 어댑터 설명 스택 ( stack) LIFO ( Last In First Out ) 나중에 삽입된 요소가 먼저 반환됩니다. 큐 (queue) FIFO ( First In First Out ) 먼저 삽입된 요소가 먼저 반환됩니다. 우선순위 큐 (Priority queue) 우선 순위가 높은 요소를 먼저 반환합니다. # stack의 멤버 함수 멤버 함수 설명 push(x) stack의 상단에 값 x를가진 요소를 추가한다. pop() stack 상단의 요소를 제거한다. top() stack 상단 요소의 값을 읽어 레퍼런스로 리턴한다. size() stack의 사이즈를 리턴합니다. emp..
[C++] STL 연관 컨테이너 Map # 맵 Map map을 사용하기 위해서는 헤더파일을 추가해야합니다. #include 맵은 특정 순서에 따라 키 값과 매핑된 값의 조합으로 형성된 요소를 저장하는 연관 컨테이너입니다. 키 값, 매핑된 값 모두 다양한 데이터 타입을 가질 수 있습니다. 예를 들어, 주민등록번호를 키 값으로 이름을 매핑된 값으로 할 수도 있고, 이름을 키 값으로 주민등록번호를 매핑된 값으로 할 수도 있습니다. 하지만 주민등록번호를 키 값으로 할 경우 키 값이 고유한 값을 가지지만, 이름을 키 값으로 할 경우 동명이인이 있을 수 있어 고유한 값을 가지지 못하므로 이런 경우에는 map보다는 multimap을 사용하는 것이 좋겠습니다. # map 클래스 템플릿의 정의 template < class Key,// map::key_typ..
[알고리즘/C++] 합병 정렬 Merge Sort # 문제 설명 n 개의 자연수 배열을 병합 정렬을 이용해 오름차순으로 정렬한다. # 입출력 예 입력 출력 8 7 6 3 1 5 2 4 8 1 2 3 4 5 6 7 8 # 문제 풀이 #include using namespace std; int arr[101], tmp[101]; void d(int left, int right){ int mid; int p1, p2, p3; if(left
[C++] 구조체를 확장하면? 클래스! # C의 구조체는 서로 다른 타입의 집합입니다. #include #include struct Student{// 구조체 int age; char name[25]; }; void printStudent(Student s){ printf("나는 %d살, %s입니다.\n", s.age, s.name); } int main() { Student s; s.age = 20; strcpy(s.name, "홍길동"); printStudent(s); return 0; } 출력 결과: 나는 20살, 홍길동입니다. # 여기에서 구조체 Student와 함수 printStudent 는 서로 상호의존적입니다. Student는 printStudent가 없으면 화면에 출력할 수가 없고, printStudent도 Student가 없으..
[알고리즘/C++] 부분집합 구하기 - 이진트리 완전탐색 (DFS) # 문제 설명 자연수 N이 주어지면 1부터 N까지의 원소를 갖는 집합의 부분집합을 모두 출력하는 프로그램을 작성하세요. # 제한사항 1
[C++] STL Vector # 헤더 #include # 생성자 #include #include #include using namespace std; void main() { vector v1;// 디폴트 생성자. 비어있음. vector v2(10);// 10칸짜리 double형 배열. vector v3(10, 7);// 10칸 7로 채워진 int형 배열. vector v4(v3);// v3를 복사하여 생성된 배열. int arr[] = {1,2,3,4,5,6,7,8,9}; vector v5(&arr[2], &arr[5]);// arr[2] ~ arr[4] 를 복사하여 생성된 배열. vector vArr[3];// ()가 아닌 []로 생성하면 vector배열이 3개가 생성된다. vArr[0].push_back(1); vArr[0]...
[C] C 문법 공부 #1 출력 printf() # printf - 기본형 printf("서식문자열", 인수, 인수, ...); 서식문자열을 출력하되, 서식문자열에 %로 시작되는 서식이 있다면 뒤에 인수를 문자열에 추가하여 같이 출력한다. int num = 20; char c = 'a'; int sum = 100; float average = 33.3; printf("문자열 출력"); printf("숫자는 %d이고, 문자는 %c입니다\n", num, c); printf("합계: %d, 평균: %f", sum, average); 문자열 출력 숫자는 20이고, 문자는 a입니다 합계: 100, 평균: 33.3 # 서식 종류 서식 의미 설명 %d or %i Decimal, Integer 10진 정수로 출력한다. %ld Long Decimal long 범위까지..

728x90