분류 전체보기92 Queue Queue 1) 정의 FIFO(First In First Out, 선입선출) 자료구조 2) 용도 (1) BFS (2) 특별한 알고리즘을 사용하는 것이 아니라 직접 문제 상황을 구현하는 문제들 중 FIFO의 구조를 문제를 풀때 3) 사용법 queue q; q.size(); // q의 사이즈(물리적 저장 용량이 아닌 원소의 개수) q.empty(); // q의 사이즈가 0인지 아닌지를 확인 q.front(); // q에 가장 먼저 들어간 원소를 리턴 q.back(); // q에 가장 나중에 들어간 원소를 리턴 q.push(val); // q의 뒤에 val 추가 q.pop(); // q에 가장 먼저 들어간 원소를 삭제 중요한 내용 queue q, emt; swap(q, emt); swap 함수 : queue에.. 2021. 8. 4. Backtracking이란 무엇인가? 백트래킹(Backtracking) 일반적인 알고리즘이다. 백트래킹은 CSP(Constrain Staisfaction Problems)을 해결하기 위해 쓰인다. 백트래킹은 모든 조합의 수를 조건이 만족할 때 살펴본다. N-Queen문제에서 많이 사용된다. N * N 체스판 위에 퀸 N개를 서로 공격할 수 없게 놓는 문제이다. N이 주어졌을 때, 퀸을 놓는 방법의 수를 구하는 프로그램을 작성하시오. 4 * 4 기준으로 문제를 풀어보자. 퀸은 칸을 기준으로 오와 열, 대각선 이동이 가능하다. 첫 번째 퀸과 공격할 수 없게 배치할려면 2번째 줄은 3, 4번째 위치에 퀸을 놓아야 한다. 첫 번째 퀸의 위치를 (1, 1)로 하면 트리구조는 다음과 같다. 만약 이문제를 가지치기 하지않는 DFS로 풀이했다면 유망하지 .. 2021. 8. 4. DP란 무엇인가? 동적 계획법 동적 계획법(dynamic programming) : 복잡한 문제를 간단한 여러 개의 문제로 나누어 푸는 방법을 말한다. 부분 문제 반복과 최적 부분 구조를 가지는 알고리즘을 일반적인 방법에 비해 더욱 적은 시간 내에 풀 때 사용한다. 1. 동적 계획법의 조건 1) 부분 반복 문제(Overlapping Subproblem) 동적 계획법의 등장은 피보나치 수열에서 시작되었다고 한다. 피보나치 수열을 재귀 함수로 표현할 시, 이와 같다. fib(1) = 1; fib(2) = 1; fib(n) = fib(n-1) + fib(n-2); // 메소드로 표현한 피보나치 수열 int fib(int n) { if (n 2021. 8. 4. 11. Q&A 사이트, 단어 시험지 I want to generate / a random integer or whole number / between 1 and N / in JavaScript. : Then / the Math.floor() function rounds the number down / to the nearest integer. : FYI : generate : integer : or : whole number : inclusive : exclusive : multiply : round down : alternatively : any : appreciate : code : complie : contain : conversion : deploy : e.g. : exception : following : format : give.. 2021. 8. 3. 11. Q&A 사이트 단어장 I want to generate / a random integer or whole number / between 1 and N / in JavaScript. : 나는 생성하고 싶다 / 임의의 정수를 / 1부터 N 숫자 사이의 / 자바스크립트로 Then / the Math.floor() function rounds the number down / to the nearest integer. : 그러고나서 / Math.floor() 함수로 숫자를 절사한다 / 가장 가까운 정수로 FYI : For Your Information generate : 생성하다(동) integer : 정수(명) or : 또는, 즉(접) whole number : 정수(명) inclusive : 포함하는(형) exclusive : 포.. 2021. 8. 3. 10. 기술 사양서, 단어 시험지 The purpose of this document / is to describe the requirements for MyExpenseTracker, / a smartphone application for tracking expenses. : The software shall have a graphical user interface (GUI) / that allows a user / to view and edit expense data. : introduction : scope : overall : perspective : characteristic : logical : appendices : assumption : dependency : additional : allow : any : appendix.. 2021. 8. 2. 이전 1 ··· 8 9 10 11 12 13 14 ··· 16 다음