본문 바로가기

나만 볼 것/코딩테스트 관련 알고리즘?6

C++) vector 사용법 #include #include #include using namespace std; vector v; int main() { // 5 3 1 3 9 순서대로 삽입 v.push_back(5); v.push_back(3); v.push_back(1); v.push_back(3); v.push_back(9); v.push_back(10); v.pop_back();//가장 마지막에 삽입된 10을 뺌 //정렬 sort(v.begin(), v.end()); cout 2022. 3. 27.
C++) DFS, BFS DFS · DFS는 깊이 우선 탐색이라고도 부르며 그래프에서 깊은 부분을 우선적으로 탐색하는 알고리즘이다. · DFS는 스택 자료구조(혹은 재귀 함수)를 이용하며, 구체적인 동작 과정은 다음과 같다. 1. 탐색 시작 노드를 스택에 삽입하고 방문 처리 2. 스택의 최상단 노드를 방문하지 않은 인접한 노드가 하나라도 있으면 그 노드를 스택에 넣고 방문 처리 방문하지 않은 인접 노드가 없으면 스택에서 최상단 노드를 꺼낸다. 3. 더 이상 2번의 과정이 수행할 수 없을 때까지 반복한다. 코드 #include #include using namespace std; bool visited[9]; vector graph[9]; // DFS 함수 정의 void dfs(int x) { // 현재 노드를 방문 처리 visi.. 2022. 3. 6.
C++ ) 문자 입력한 수 까지 입력, 형변환, 반올림 문자 입력한 수 까지 출력 #include using namespace std; char a[50]; int main() { cin >> a; for (int i = 0; a[i] != '\0'; i++) { cout 2022. 2. 10.
C++)유클리드 호제법으로 최대 공약수 최소 공배수 구하기 #include using namespace std; //최대공약수 int gdc(int a, int b) { if (a % b == 0) return b; else return gdc(b, a % b); } //최소공배수 int lcm(int a, int b) { return a * b / gdc(a, b); } int main() { cout 2022. 2. 8.