전체 글 (36) 썸네일형 리스트형 [Algorithm] 04. 해시테이블 (Hash Table) 해시테이블 (Hash Table) 해시테이블(Hash Table)은 빠른 탐색을 위해 key-value 쌍으로 데이터를 저장하는 자료구조이다.해시 함수 h에 키 값을 입력 받아 얻은 해시값 h(k)을 위치로 사용하여 데이터를 저장한다. 💡 직접 주소화 테이블 (Direct-address Table) 직접 주소화 테이블(Direct-address Table)이란 key 값이 k인 데이터를 index k 위치에 저장하는 방식이다.// key = 출석번호, value = 이름 // key = ID, value = 이름 person[2024] = "박서준" person["Id1"] = "박서준"person[2025.. [Algorithm] 03. 정렬 (Sorting) 정렬 (Sorting) 정렬에는 오름차순 정렬과 내림차순 정렬이 있다. 💡 배열(Array) 정렬 📍 오름차순 정렬 배열을 오름차순으로 정렬하는 가장 기본적인 방법은 Arrays.sort() 메서드를 사용하는 것이다.public class Main { public static void main(String[] args) { int[] numbers = {5, 2, 9, 1, 5, 6}; String[] words = {"banana", "apple", "cherry"}; // 숫자 오름차순 정렬 Arrays.sort(numbers); System.out.println(Arrays.toString(num)); .. [Algorithm] 02. 리스트 (List) 리스트 (List) 리스트(List)란 순서를 가지고 원소를 저장하는 자료구조로 Array List나 Linked List로 구현이 가능하다. Array List는 요소를 빈번히 검색해야 하거나, 중간 삽입과 삭제가 적은 경우에 적합하다.Linked List는 삽입과 삭제가 빈번하고, 데이터의 물리적 위치가 중요하지 않은 경우에 유리하다. Array List 배열을 기반으로 구성된 List형 자료구조로 정적배열(Static Array)이나 동적배열(Dynamic Array)로 구현이 가능하다. 💡 Static Array Static Array는 다음과 같은 두 가지 특징을 가진다.고정된 크기의 저장 공간을 가진다.연속된 메모리에 순차적으로 데이터를 저장한다.즉, 배열을 선언할 때 선언한 크기만큼 .. [Algorithm] 01. 알고리즘(Algorithm) 개념 및 평가 기준 알고리즘 알고리즘이란 문제를 해결하기 위한 절차나 단계의 집합으로 완전탐색, BFS, DFS, 정렬 등이 자주 사용된다.알고리즘 평가 기준에는 시간/공간/구현 복잡도가 있는데 기업 코딩 테스트에서는 시간 복잡도를 중요하게 생각한다. 시간 복잡도 시간 복잡도는 실행 시간과 연관이 있다.실행 시간은 프로그램이 시작되고 모든 코드를 실행하는데 걸리는 시간을 의미한다. 실행 시간에 영향을 주는 요소는 다양하게 존재하지만, 코드 관점에서는 크게 두 가지로 볼 수 있다.처리해야 하는 코드의 개수한 줄의 코드를 처리하는데 걸리는 시간 💡 빅오(Big-O) 입력 크기(n)에 따라 알고리즘이 실행되는데 필요한 시간 복잡도를 빅오(Big-O)로 표현할 수 있다. 빅오(Big-O)는 계산 결과를 단순화 하기 위해서.. 이전 1 2 3 4 5 다음