기타80 <priority_queue> 자료구조 Priority_Queue는 Queue 의 한 종류인데 말 그대로 우선순위에 따라 정렬된 Queue라고 보면 도니다. 와 동일한 라이브러리에서 지원 해주며 특정 원소를 push 를 할 때 O(logN)만에 이루어진다. 해당 시간 복잡도가 이해가 안간다면 자료구조 [힙] 이라는 것을 search 해보길 바란다. Priority_Queue 는 힙 구조로 되어있다. priority_queue 변수명 : 생성 priority_queuen2; } }; int main() { priority_queue q; q.push(1); q.push(3); q.push(2); for (int i = 0; i < 3; i++) { cout 기타/C++ 문법 2022. 1. 14. <map> 자료구조 *헤더로 을 갖는다. 은 key 와 value 의 쌍으로 이루어진 균형 이진 트리이다. key 를 기준으로 사전순으로 정렬되어 있기 때문에 검색 속도가 빠르다. 바로 map 의 쓰임을 알아보자. string s= "my name is my name" 스트링 s 에는 "나의 이름은 나의 이름" 이라는 영어 문장을 적었는데 해당 문자열의 알파벳 종류에 따른 개수를 구조화 시키고 싶을 때 이라는 자료구조를 쓰면 된다. 즉, m 이라는 알파벳이 몇개가 나왔는지 알고 싶다면 map 을 활용 하면 된다. map 은 여러 타입을 묶음으로 가질 수 있으니 사용자는 문제에 맞는 구조로 구현 하면 된다. map 변수명 map 변수명 map 변수명 .. 기타/C++ 문법 2022. 1. 14. <sort> 오름차순, 내림차순으로 정렬하자 sort() 함수는 algorithm 헤더에 포함되어 있다. 대부분 코딩테스트에서 웬만해선 처음부터 끝까지 정렬을 한 후 문제를 풀게끔 되어 있는 경우가 많다. 이럴때 sort() 함수가 매우 유용하다. 벡터, 문자열, 배열 모두 sort() 함수를 이용하여 풀 수 있다. 벡터를 모두 정렬할 때는 sort(v.begin(), v.end()) 문자열을 모두 정렬할 때도 동일하다. 배열을 모두 정렬할 때는 sort(arr, arr+10) 라고 정의 할 수 있다. 배열에서 10의 의미는 처음부터 10개를 정렬하라는 의미이다. 즉, 10이 아니라 5이면 처음부터 5개를 정렬하라는 의미이다. 다음 코드를 한번 살펴보고 꼭 외우도록 한다. #include using namespace std; int main() {.. 기타/C++ 문법 2022. 1. 14. [신입 개발자 기술 면접] 데이터베이스 데이터베이스 언어(DDL, DML, DCL)에 대해 설명해주세요. 데이터 정의 언어(Data Definition Language, DDL): 데이터베이스의 구조를 정의하거나 변경하는 데 사용되는 명령어입니다. 주요 DDL 명령어는 다음과 같습니다. CREATE: 데이터베이스, 테이블, 인덱스 등의 객체를 생성합니다. ALTER: 데이터베이스 객체의 구조를 변경합니다. 예를 들어, 테이블에 새로운 열을 추가하거나 제거하는 작업이 포함됩니다. DROP: 데이터베이스 객체를 삭제합니다. TRUNCATE: 테이블의 모든 데이터를 삭제하고 초기 상태로 되돌립니다. 데이터 조작 언어(Data Manipulation Language, DML): 데이터베이스의 데이터를 검색, 추가, 수정, 삭제하는 데 사용되는 명령어.. 기타/기술 면접 대비 2022. 1. 14. <sqrt> 제곱근(루트) 코딩 테스트에서 정사각형의 넓이 값을 구해서 그 정사각형의 한 변의 길이를 구하라고 한다면 이 함수를 쓰면 바로 나올것이다. 즉, 제곱근(루트) 함수라고 생각하면 된다. 학창 시절 배웠던 루트를 C++에서 이렇게 쓰인다 정도만 알아두면 된다. 해당 함수를 사용 할 경우 소수점까지 나오는 값들이 있다. 예를 들면 루트 4 는 값이 2라는 정수값이라는 것을 알것이다. 하지만 루트 2는 1.41421 의 값이 된다. 하지만 코딩테스트에서 소수점 몇째자리를 구하라 그런 문제는 본적이 없다. 해당 값의 정수값만 구해서 응용해서 푼적은 여러번 있다. 이럴경우 해당 값을 정수형으로 반환하면 된다. #include using namespace std; int main() { int a = 2; cout 기타/C++ 문법 2022. 1. 13. <abs> 절댓값 반환 두 값의 차이를 물을 때 쓰이는 함수이다. "10-1"의 값은 9 이지만 "1-10" 의 값은 -9가 나온다. 즉, 차이값만 확인하고 싶을 때 abs(값) 을 넣으면 절댓값으로 나오게 된다. #include using namespace std; int main() { int a = 1; int b = 10; cout 기타/C++ 문법 2022. 1. 13. <next_permutation> 모든 경우의 수 정렬 벡터를 정렬할 때 정렬 될 수 있는 모든 경우의 수를 물어보는 문제가 있다. 이러한 경우 해당 함수를 사용한다. 즉, A B C 를 정렬하고 싶은데 모든 경우를 정렬하면, ABC ACB BAC BCA CAB CBA 순으로 정렬이 된다. 해당 함수는 do{} while() 과 많이 쓰인다. 이때 주의할 점은 do while을 사용하기 전에 저장되어있던 순 부터 사전순으로 정렬된다 다시 말해, BCA 에서 permutation 을 수행한다면 ABC부터 정렬되는게 아니라 BCA에서부터 CBA까지 정렬된다는 점이다. 해당 함수를 이해하고 문법을 공부하자 #include #include #include using namespace std; int main() { int answer = 0; vector v1 = .. 기타/C++ 문법 2022. 1. 13. <find> 문자열 안에 문자/문자열 찾기 find 코딩테스트에서 정말 많이 쓰이는 함수이다. 어떠한 문자 또는 문자열을 찾기 위해서 for문을 돌려가며 체크를 무식하게 해왔던 기억이 있다. 그렇게 하지말고 find 함수를 사용하여 쉽게 check 를 할 수 있다. 다음 코드를 보면서 find를 이해하고 문법을 바로 사용할 수 있을 정도로 익히자 *추가적으로 s.find("hi", 5) ; 라고 적혀있으면 "hi"라는 문자열을 s라는 문자열 5번째 위치부터 찾겠다는 뜻. #include #include using namespace std; int main() { string s = "himynameis"; cout 기타/C++ 문법 2022. 1. 13. <substr> 인덱스로 문자열 자르기 문자열을 처리하기 위해서 정말 많이 쓰이는 함수이다. 이 함수는 어떠한 문자열의 특정 인덱스에서 어떠한 인덱스까지 사이의 새로운 문자열을 만들때 보통 사용된다. 예를 들어, "abcdefe" 라는 문자열을 "abc" 라던지 "cdef" 라던지 연속된 문자들의 서브스트링을 새로 만들때 필요하다. 코딩테스트를 준비하면서 가장 많이 쓰이는 부분은 다음과 같으니 문법과 출력한것을 보고 이해하고 외우자 #include #include using namespace std; int main() { string s = "himynameis"; cout 기타/C++ 문법 2022. 1. 13. <stringstream> 공백으로 문자열 자르기 '남이 읽는 CS/운영체제' 카테고리의 글 목록 baebalja.tistory.com 운영체제 CS 준비하시는 분들 도움 되셨으면 하는 마음으로 포스팅하고 있어요!! 관심 있으신 분들은 위의 링크 클릭! 문자열이 공백이 주어진 상태로 주어진다면 공백을 기준으로 문자열을 자를 수 있다. 예) string s = "abc def gh" ; 해당 문자열을 "abc" , "def" , "gh" 로 자르는 거다. 해당 문법을 알아보자. #include #include using namespace std; int main() { string x, y, z; string s1 = "abc def gh"; stringstream s2(s1); s2 >> x >> y >> z; cout 기타/C++ 문법 2022. 1. 13. 이전 1 ··· 5 6 7 8 다음 반응형