본문 바로가기
반응형

알고리즘/기본10

Java 코테용 정리 자바는 원시 타입을 제외하면 모두 참조 타입이다. [ 입출력 ] 테스트 케이스 이용 System.setIn(new FileInputSteam("input.txt")) 테스트 케이스 하나하나 입력하지 않고, 파일로 실행하기 문자열 입력 받을 때 Scanner가 아니라 BufferedReader를 사용하자. import java.io.*; Scanner가 공백, 개행 시 나눠주는 것이 편하지만 느리다. BufferedReader는 하나 하나 사용자가 나누어주어야 한다. // split 보다 BufferedReader가 더 빠르다. StringTokenizer를 이용한다. 예시 BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); .. 2021. 4. 3.
비트마스크 비트마스크 비트마스크 - 정수의 이진 표현을 자료 구조로 사용. - 비트마스크를 이용하면, 일반적인 자료구조들 보다 메모리를 효율적으로 사용할 수 있다. - 빠르고 간결한 코드 사용 가능. 비트마스크 사용 방법 - 0 or 1로 표현. 2020. 11. 30.
[C++/STL] Algorithm 0. C++ STL - Algorithm - 헤더 선언 필요( #include ) 1. 정렬 정렬 함수 - 일반적인 정렬 함수 - O(nlogn) 보장 - sort(원소 시작 위치 반복자 ,원소 마지막 다음 위치 반복자 , 비교함수) - 예시(오름차순) #include #include #include using namespace std; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); vector vec{ 5,6,8,12,3,9,1,30 }; cout 2020. 6. 14.
[C++/STL] 셋(Set), 맵(Map) 1. 셋(Set) 셋(Set) 이란? - 완전 이진 트리 형태로 정렬되어 있기 때문에 빠른 검색 속도를 보장한다. - 원소 삽입, 삭제, 탐색 등의 연산은 O(logn)을 보장한다. - 중복된 원소는 추가할 수 없다. 셋 사용 방법 - 셋 선언 // 헤더 선언 필요 #include // int 자료형을 저장하는 셋 선언 set s; - 원소 추가 // 원소 n 추가 s.insert(n); - 원소 탐색 // 원소 n 찾기, 해당 원소가 존재하면 해당 주소 반환, 없으면 s.end() 반환. s.find(n); - 원소 제거 // 값이 n인 원소 제거 s.erase(n); // 모든 원소 제거 s.clear(); - 기타 // set의 크기(원소의 개수) 반환 s.size(); 2. 맵(Map) 맵(Map.. 2020. 6. 7.
반응형