알고리즘

· Algorithm
이진 탐색 (Binary Search)이진 탐색은 이분 탐색, Binary Search라고도 부릅니다. 그리고 이진 탐색은 순차적 탐색보다 빠른 탐색을 하기 위해 고안된 탐색 알고리즘으로 실제로 이분 탐색의 시간 복잡도가 순차적 탐색의 시간 복잡도보다 낮습니다.즉, 이진 탐색은 정렬된 배열 또는 리스트에서 특정 값을 찾는 적합한 고속 탐색 알고리즘입니다.배열이 정렬되어 있어야 한다는 조건이 필요하기 때문에 배열이 정렬되어 있지 않은 경우에는 정렬 작업이 필요합니다.순차적 탐색정렬된 배열 안에서 특정 원소를 찾기 위해 인덱스가 0인 원소부터 차례대로 탐색합니다.순차적으로 탐색하기 때문에 원소를 중간에 건너뛰지 않습니다.이분 탐색정렬된 배열 안에서 특정 원소를 찾을 때 인덱스 i부터 j의 중간값과 비교합니다..
✏️본 게시글은 자바로 배우는 핵심 자료구조와 알고리즘을 학습한 내용을 개인적으로 학습하기 위해 정리한 글입니다. 3.1 MyArrayList 메서드 분류 3.1.1 get 메서드 구현 public E get(int index) { if (index = size) { throw new IndexOutOfBoundsException(); } return array[index]; } get 메서드에 있는 모든 것은 상수 시간입니다. 따라서 get 메서드는 상수 시간입니다. 3.1.2 set 메서드의 구현 public E set(int index, E element) { E old = get(index); array[index] = element; return old; } set 메서..
2023.03.12 - [Study/Think Data Structures] - [자바로 배우는 핵심 자료구조와 알고리즘] 1장. 인터페이스 [자바로 배우는 핵심 자료구조와 알고리즘] 1장. 인터페이스 ✏️본 게시글은 자바로 배우는 핵심 자료구조와 알고리즘을 학습한 내용을 개인적으로 학습하기 위해 정리한 글입니다. 이 책은 다음 세 가지 주제를 다룹니다. 자료구조 알고리즘 분석 정보 gyunny.tistory.com ✏️본 게시글은 자바로 배우는 핵심 자료구조와 알고리즘을 학습한 내용을 개인적으로 학습하기 위해 정리한 글입니다. 프로파일링 접근법을 통해 어떤 응용 프로그램에서 어느 클래스가 더 좋을지 둘 다 시도해 보고 각각 얼마나 걸리는지 비교하면 됩니다. 대신 몇 가지 문제점이 있습니다. 알고리즘을 ..
✏️본 게시글은 자바로 배우는 핵심 자료구조와 알고리즘을 학습한 내용을 개인적으로 학습하기 위해 정리한 글입니다. 이 책은 다음 세 가지 주제를 다룹니다. 자료구조 알고리즘 분석 정보 검색 1.1 리스트가 두 종류인 이유 Java Collections Framework를 사용하다 보면 ArrayList와 LinkedList 클래스를 헷갈릴 수 있습니다. 왜 자바는 List 인터페이스에 두 가지 구현을 제공할까? 둘 중에 어떤 것을 선택해야 할까? 예제를 통해 ArrayList, LinkedList와 유사한 클래스를 구현하고, 따라서 이들의 동작 방법과 각각의 장단점을 학습할 예정입니다. 어떤 동작은 ArrayList가 빠르거나 저장 공간을 적게 사용하고 다른 상황에서는 LinkedList가 빠르거나 메모..
규니95
'알고리즘' 태그의 글 목록