java10 [Java] DFS 이진트리순회 부분집합 구하기 이진트리순회부분집합 구하기 이진트리순회 class Node { int data; Node lt, rt; public Node(int val) { data = val; lt = rt = null; }}public class Main { Node root; public void DFS(Node root){ if (root == null) return; else { System.out.print(root.data + " "); // 전위 DFS(root.lt); System.out.print(root.data + " "); // 중위 DFS(root.rt); System.out.print(root.data + " "); // 후위 } public static void main(S.. 2025. 2. 26. [Java] 자바 알고리즘 문제풀이 : 피보나치 재귀(메모이제이션) 피보나치수열 입력설명: 첫 줄에 총 함수 N(3 출력설명: 첫 줄에 피보나치 수열을 출력합니다. 입력예제: 10 출력예제: 1 1 2 3 5 8 13 21 34 55 class Main { public int DFS(int n) { if (n==1) return 1; else if (n==2) return 1; else return DFS(n-2)+DFS(n-1); } public static void main(String[] args) { Main T = new Main(); int n = 10; for(int i=0; i class Main { static int[] fibo; public int DFS(int n) { if(n==.. 2025. 2. 24. [Java] 자바 알고리즘 문제풀이: DFS 재귀함수 재귀함수(스택프레임)이진수 출력(재귀)팩토리얼 재귀함수(Recursion Function)란?재귀의 뜻 그대로 자기 자신을 다시 호출해 작업을 수행하는 방식이다. 특정 분기까지 자기 자신을 계속해서 호출한다. 주로 반복문을 구현할 때 사용한다. 흔히 사용하는 for, while 등 이러한 반복문으로 구현 가능한 로직은 모두 재귀함수로 구현이 가능하다. 재귀 함수는 큰 목표 작업 하나를 동일하면서 간단한 작업 여러 개로 나눌 수 있을 때 유용한 프로그래밍 패턴이다. 목표 작업을 간단한 동작 하나와 목표 작업을 변형한 작업으로 단순화 시킬 수 있을 때로 재귀를 사용할 수 있다. 재귀 함수의 장단점장점변수를 여러개 만들 필요가 없다. 현재 상태를 저장해야 할 경우 변수를 만들기 보다 상태를 재귀적으.. 2025. 2. 19. [Spring] 싱글톤 컨테이너 웹 애플리케이션과 싱글톤싱글톤 패턴싱글톤 컨테이너 웹 애플리케이션과 싱글톤대부분의 스프링 애플리케이션은 웹 애플리케이션이다. 웹 애플리케이션은 보통 여러 고객이 동시에 요청을 한다. 스프링 없는 순수한 DI 컨테이너 테스트package hello.core.singleton;import hello.core.AppConfig;import hello.core.member.MemberService;import org.junit.jupiter.api.DisplayName;import org.junit.jupiter.api.Test;import static org.assertj.core.api.Assertions.*;public class SingletonTest { @Test @DisplayName("스프링.. 2025. 2. 10. 이전 1 2 3 다음