오늘까지만은 없다
전체 글
오늘만, 오늘까지만은 없다
이분 탐색이란?이분탐색(Binary Search)란, 정렬된 데이터에서 특정 값을 빠르게 찾기 위해 사용되는 알고리즘이다.탐색 공간을 절반으로 줄여가며 원하는 값을 찾는 방식으로, 매우 효율적이고 직관적이다.주로 정렬된 배열 또는 리스트에서 사용되며, 시간 복잡도가 매우 낮아서 대규모 데이터에 효과적이다. [1, 2, 4, 7, 9, 10] 처럼 정렬된 배열에서 사용탐색 공간을 절반 씩 줄여가며 탐색최선의 경우 시간 복잡도 : O(1)최악의 경우 시간 복잡도 : O(log n) 알고리즘 설명예시그림과 같이 크기가 13인 배열 안에 숫자들이 오름차순으로 정렬되어있고, 그중 4라는 숫자가 들어간 인덱스를 구해본다고 가정 해보겠다.모든 배열을 탐색한다고 하면, 시간 복잡도는 O(n)으로, 모든 배열을 순회해..
· JAVA/study
import java.util.*;public class ComparatorExample { public static void main(String[] args) { List list = Arrays.asList("apple", "banana", "kiwi", "grape"); Collections.sort(list, new Comparator() { @Override public int compare(String o1, String o2) { return o1.compareTo(o2); // 사전식 정렬 } }); System.out.println(list); ..
ublic class Recurrence { public static void main(String[] args) { int result = 1; int num = 4; for(int i = 0; i 1. 점화식 (Recurrence)점화식(Recurrence)란 어떤 수열의 일반항을 그 이전의 항들을 이용하여 정의한 식을 뜻한다.대표적인 예시로 피보나치 수열이 있다. 1) 피보나치 수열1, 1, 2, 3, 5, 8, 13 ...F(n+2) = F(n+1) + F(n)위의 예시에서, 1 + 1 은 2 이고, 1 + 2 는 3 인것처럼, 이전 2개의 항의 합이 다음 항의 값을 도출해 내는것을 볼 수 있다.2) 배수로 증가1, 3, 9, 27 ...F(n+1) = ..
1. HashSet 이란?HashSet은 자바에서 제공하는 컬렉션 프레임워크의 일부로, 집합(Set) 인터페이스를 구현한 클래스이다. HashSet의 가장 큰 특징은 중복된 요소를 허용하지 않는다 는 점이다. 즉, 같은 값을 여러 번 추가할 수 없으며, 이를 통해 데이터의 유일성을 유지할 수 있다. 이러한 특성 덕분에 HashSet은 데이터의 중복을 체크해야 하는 경우에 매우 유용하다.  2. HashSet의 기능중복 없음 : HashSet은 중복된 요소를 허용하지 않으며, 동일한 요소를 여러 번 추가하려고 하면 무시순서 없음 : 요소의 저장 순서는 보장되지 않으며, 추가된 순서와는 다르게 저장null 값 허용 : HashSet은 하나의 null 값을 허용 3. 주요 메서드add : 집합에 요소를 추가합..
2024년 08월 05일 1차 발표 이후IC TICKET 프로젝트의 1차 발표를 모두 마쳤다.애자일 방식으로 프로젝트를 진행하고 매일 팀원들과 스프린트를 진행하여 기간내에 목표로 두었던 기능들을 모두 구현하는데 성공하였다.발표는 생각보다 괜찮았었고, 발표가 끝나고 드디어 튜터님의 질문 리스트를 받게 되었다.이 질문에 우리팀은 다같이 모여 또 한번 깊게 고민해 보는 시간을 가졌고, 아래가 질문에 대한 답변을 정리해 두었다.   튜터님 질문 - SA 공통질문Q1. ERD 기준에서 가격 컬럼이 int 형식입니다. float, decimal 등이 아니라 int로 선택한 이유가 무엇일까요?A1.  먼저 가격 컬럼을 int로 표기한 이유는 정밀도와 성능, 그리고 비즈니스 기획때문 입니다.  정밀도  : float과..
H2 databse란?다들 프로젝트를 진행하면서 처음 접하거나 배우는게 MySql / Oracle 같은 대중적인 데이터베이스 일것이다.이미 많은 회사가 MySql 혹은 Oracle을 사용하기도 하고, 개발을 공부하는데 반드시 접해볼 수 밖에 없는 데이터 베이스이기 때문이다.그런데 최근에 Java를 공부하면서 H2 Database 라는걸 처음 알게 되었다. 이건 또 뭔가?  H2 Database는 Java로 작성된 오픈 소스 관계형 데이터베이스 관리 시스템(RDBMS)이다.  즉, Java에서 제공해주는 데이터베이스 라는 뜻이 된다.   H2 database 언제 사용하나?"그렇다면 도대체 어떤 H2 database 는 언제 사용해야하나요? 그냥 MySql / Oracle 사용하면 되는거 아닌가요?"반은 ..
Maltyy
maltyy