목록분류 전체보기 (7)
간타 Dev
재귀함수 재귀함수란 어떤 함수에서 자신을 다시 호출하여 작업을 수행하는 방식의 함수를 의미한다. 반복문을 사용하는 코드는 항상 재귀함수를 통해 구현하는 것이 가능하며 그 반대도 가능하다. 재귀함수를 작성할 때는 함수내에서 다시 자신을 호출한 후 그 함수가 끝날 때 까지 함수 호출 이후의 명령문이 수행되지 않는다는 사실과 종료조건이 꼭 포함되어야한다는 부분을 인지하고 작성하면 무한루프를 방지할 수 있다. 재귀함수 예제 public class PlusFunction { public static void main(String[] args) { HelloWorld(5); // HelloWorld 출력 메서드 호출 } // HelloWorld 출력 메서드 선언 public static void HelloWorld..
백준 2750번 수 정렬하기 문제이다. 선택정렬을 이용하여 문제를 풀어나갔으며, 정렬을 한번쯤은 해본사람이라면 누구나 쉽게 풀 수 있는 문제인것같다. 풀이
1.1 초난감 DAO DAO는 DB를 사용해 데이터를 조회하거나 조작하는 기능을 전담하도록 만든 오브젝트를 말한다. JDBC를 이용한 등록과 조회 기능이 있는 UserDao 클래스를 만든다. 1.2 DAO의 분리 관심사의 분리 : 관심이 같은것끼리는 하나의 객체 안으로 또는 친한 객체로 모이게하고, 관심이 다른것들은 가능한 한 따로 떨어져서 서로 영향을 주지 않도록 분리 하는것 UserDao의 관심 사항 DB와 연결을 위한 커테션을 어떻게 가져올 것인가 사용자 등록을 위해 DB에 보낼 SQL 문장을 담을 Statement 를 만들고 실행. 작업이 끝나면 사용한 리소스인 Statement 와 Connection의 리소스 해제. -> 하나의 관심사가 방만하게 중복되어 있고, 여기저기 흩어져 있어서 다른 관심..
시간복잡도, 공간복잡도 시간복잡도는 알고리즘의 절대적인 실행 시간을 나타내는 것이 아닌 알고리즘을 수행하는데 연산들이 몇 번 이루어지는지를 숫자로 표기 한다. 여기서 연산이란 산술, 대입, 비교, 이동을 말한다. 연산의 실행 횟수는 보편적으로 그 값이 변하지 않는 상수가 아니라 입력한 데이터의 개수를 나타내는 n에따라 변하게 된다. 연산의 개수를 입력한 데이터의 개수 n의 함수로 나타낸것을 시간복잡도 라고 말하며, 수식으로 T(n)이라고 표기한다. 공간복잡도는 프로그램을 실행시킨 후 완료하는 데 필요로 하는 자원 공간의 양을 말한다. 총 공간요구 = 고정 공간 요구 + 가변 공간 요구로 나타낼 수 있으며 수식으로는 S(P) = c + Sp(n)으로 표기. 여기서 고정 공간은 입력과 출력의 횟소누 크기에 ..