본문 바로가기

SMALL

전체 글

(27)
자바 재귀호출 재귀호출은 함수가 자신을 다시 호출하는 알고리즘 기법입니다. 재귀 호출은 알고리즘을 단순화하고 명확하게 할 수 있으며, 탐색, 정렬 등 다양한 문제에 활용할 수 있습니다. 재귀호출의 기본 구조는 보통 두 부분으로 이루어집니다: 1. 기본 경우(Base case): 함수가 더 이상 재귀호출을 하지 않고 결과를 직접 반환하는 경우입니다. 이는 무한 재귀를 방지하는 역할을 합니다. 2.재귀 경우(Recursive case): 함수가 자기 자신을 다시 호출하는 경우입니다. 다음은 자바로 구현한 팩토리얼 계산을 위한 재귀호출 예제입니다 위의 factorial 함수에서, 기본 경우는 n이 0일 때입니다. 이 경우 함수는 1을 반환하고 재귀호출을 중지합니다. 재귀 경우는 n이 0이 아닐 때입니다. 이 경우 함수는 n..
더블 링크드 리스트(Doubly Linked List) 더블 링크드 리스트(Doubly Linked List)는 링크드 리스트의 한 형태로, 각 노드가 이전 노드와 다음 노드에 대한 참조를 가지고 있는 데이터 구조입니다. 이러한 특성 덕분에 더블 링크드 리스트는 한 방향 링크드 리스트보다 훨씬 유연한 작업을 제공합니다. 각 노드는 다음 두 가지 정보를 포함합니다 1. 데이터: 이는 저장하려는 실제 정보입니다. 2. 두 개의 링크(포인터): 하나는 이전 노드를 가리키고, 다른 하나는 다음 노드를 가리킵니다. 아래는 더블 링크드 리스트를 Java로 구현한 간단한 예제입니다 이 예제에서는 DoublyLinkedList라는 클래스를 생성하였고, 이 클래스는 더블 링크드 리스트의 첫 번째 노드를 가리키는 head 노드를 가지고 있습니다. append 메서드를 사용하여..
Gof 자바 Chain of Responsibility 패턴 Chain of Responsibility 패턴은 특정 요청에 대한 처리를 한 객체가 아니라 여러 객체에게 그 처리를 위임하는 디자인 패턴입니다. 객체들은 연결된 체인 구조를 형성하며, 요청이 들어오면 그 체인을 따라가며 각 객체가 요청을 처리하거나 다음 객체로 넘깁니다. 이 패턴의 주요 이점은 요청을 보내는 클라이언트와 그 요청을 처리하는 객체를 분리한다는 점입니다. 이로 인해 객체는 요청을 처리하는데 어떤 객체가 책임을 질지에 대해 알 필요가 없으며, 체인의 구성을 변경하거나 추가하는 것이 용이합니다. 다음은 Chain of Responsibility 패턴을 Java로 구현한 간단한 예제입니다. 이 코드에서는 두 개의 구체적인 처리기 (ConcreteHandler1, ConcreteHandler2)를..

LIST