1. 다음 중 vector 컨테이너의 특징을 고르세요.1. 시퀀스 컨테이너입니다.2. sort( ), splice( ) 멤버함수를 제공합니다. (vector 자체에서 sort splice는 제공하지 않음)3. 배열 기반 컨테이너 입니다.4. 컨테이너 앞, 뒤로 추가/제거가 가능합니다. (vector는 뒤로 추가 제거만 가능)5. 임의 접근 반복자를 제공합니다.6. reserve( ) 멤버 함수를 제공합니다.7. 빠른 시간(상수 시간)에 원소를 삽입, 삭제 할 수 있습니다. (삽입 삭제 시 필요한 만큼의 메모리 공간을 위해 빠른 시간 내에 할 수는 없음) 답: 1, 3, 5, 6 2. 다음 중 deque 컨테이너의 특징을 고르세요.1. 시퀀스 컨테이너 입니다.2. sort( ), splice( ) 멤버 함..
1. 다음 빈 칸을 채우세요.1. STL 구성 요소에서 객체들을 저장하는 객체를 ( 컨테이너 ) 라 합니다.2. 컨테이너의 원소를 순회하고 참조하는 객체를 ( 반복자 ) 라 합니다.3. 여러가지 문제 해결을 위한 반복자와 동작하는 함수 템플릿을 ( 알고리즘 ) 라 합니다. 2. 다음 빈 칸을 채우세요.1. 컨테이너 원소가 자신만의 삽입 위치를 갖는 것을 ( 시퀀스 ) 컨테이너라 합니다.2. 컨테이너 원소가 특정 정렬 기준에 의해 자동 정렬된 것을 ( 연관 ) 컨테이너라 합니다. 3. 다음 빈 칸을 채우세요1. 배열 기반 컨테이너인 vector와 deque는 ( 임의 접근 ) 반복자를 제공하며, 그 외 모든 STL컨테이너는 ( 양방향 ) 반복자를 제공합니다.2. (시퀀스(순차열))은 원소의 순..
문제1다음은 배열의 원소를 복사하는 함수 템플릿 Copy( )의 호출 코드입니다. 함수 템플릿 Copy( )를 작성하세요.//1번int arr1[5] = { 10, 20, 30, 40, 50 };int arr2[5];//Copy(t, s, n) t:목적지 주소, s:소스 주소, n:원소 개수Copy(arr2, arr1, 5); 문제1 풀이코드//1번문제 Copy 템플릿 함수 templatevoid Copy(T* t, T* s, int n) { for (int i = 0; i 문제2다음은 Push( ), Pop( ), Empty( ) 인터페이스를 갖는 Stack 객체의 사용 코드입니다. 최소한의 Stack 클래스를 작성하세요.//2번Stack st;st.Push(10);st.Push(20);st.Pus..
1. 다음 이항 연산자 +가 호출하는 오버로딩 함수 두 개를 고르세요.Point p1, p2;p1+p2;operator+(p2,p1);p1.operator+(p2);operator+(p1,p2);p2.operator(p1);답: 2,31번이 안되는 이유: 매개변수의 순서가 p2가 먼저오기 때문에 p2+p1에 대해서 가능하므로 X4번 역시 this인 자기자신이 p2기 때문에 불가능 2. 다음 세 인자를 받는 () 연산자 오버로딩 함수 선언으로 맞는 것은?func(10, 20, 30);void operator()(void);void operator()(int);void operator()(int, int);void operator()(int,int,int);답: 4이유: 오버로딩은 함수이름이 같지만 전달받는..
1. 2개의 정수를 서로 교환하는 알고리즘을 의사 코드로 작성해보자.Swap(a, b) temp 2. 사용자로부터 받은 2개의 정수 중에서 더 큰 수를 찾는 알고리즘을 의사코드로 작성해보자.max(a,b) if a > b then return a; else return b; 3. 1부터 n까지의 합을 계산하는 알고리즘을 의사코드로 작성해보자.sum(a) return a(a+1)/2 4. Set(집합) 추상 자료형을 정의하라. 다음과 같은 연산자들을 포함시켜라.create: 집합을 생성insert: 집합에 원소추가remove: 집합에 원소제거is_in: 집합에 있는지 검사union: 두 집합의 합집합intersection: 두 집합의 교집합difference: 두 집합의 차집합 6...