일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 백내장
- 금융감독원
- 자바
- Spring
- 코드스테이츠 합격 후기
- 백내장 금감원
- codestates 국비지원 1기 합격 후기
- 메서드
- 코드스테이츠 부트캠프 합격 후기
- 금융감독원 민원신청
- 에이치엘비
- 해시
- CodeState 후기
- HLB
- 백내장 다초점렌즈 삽입술
- 보험금 지급거절
- 코드스테이츠 부트캠프
- 겜스고
- Gamsgo
- 코드스테이츠 백엔드 후기
- 백준 알고리즘
- 코드스테이츠 백엔드 교육과정
- Code States 백엔드 합격 후기
- 금감원 백내장 민원
- 코드스테이츠 합격
- 금감원
- 코드 스테이츠 백엔드 교육과정
- 코테 합격후기
- Java
- 코드스테이츠 백엔드 부트캠프 합격
Archives
- Today
- Total
개발하는 동그리
[Java] 완전 탐색 알고리즘 (Brute-Force Algorithm) 본문
반응형
Brute-Force !?
컴퓨터 과학에서 시행착오 방법론이라고 말하고, 암호학에서도 사용한다. 이는 어떤 암호를 풀기 위해 모든 값을 대입해서 찾아내는 방법으로 지능적인 전략을 사용하지 않는다. 예를 들어 0000 ~ 9999 자물쇠가 있다면 모든 수를 대입해보는 방식인 것이다.
Brute Force Algorithm ?!
의미
- 위 뜻과 마찬가지로 무차별 적인 대입하는 방법으로 모든 가능성을 시도하는 것이다. 따라서 공간 복잡도와 시간 복잡도를 전혀 고려하지 않은 방법이다. 때문에 최적의 솔루션이 될 수 없다.
사용 조건
- 프로세스 속도를 높이는 데 사용할 다른 방법이 없을 경우
- 문제를 해결할 여러 솔루션이 있고 각 솔루션을 확인해야 할 때
주요 활용 알고리즘
- 순차 검색 알고리즘 (Sequential Search
: 배열 안에 특정 값이 존재하는지 인덱스 0부터 순차적으로 검색 - 문열 매칭 알고리즘 (Brute-Force String Matching)
: 길이가 n인 전체 문자열이 m인 문자열 패턴을 포함하는지 검색할 때 - 선택 정렬 알고리즘 (Selection Sort)
: 전체 배열을 검색하여 현재 인덱스 값과 순회하는 배열 값과 비교하여 오름차순/ 내림차순에 따라 정렬하는 것
그 외 활용 알고리즘
- 버블 정렬 알고리즘 (Bubble Sort)
- Tree 자료 구조의 완전 탐색 알고리즘 Exhausive Search (BFS, DFS)
- 동적 프로그래밍 - DP(Dynamic Programing)
반응형
'IT 정보 > Java' 카테고리의 다른 글
[Java] 탐색 알고리즘!? (Search Algorithm) (29) | 2022.05.31 |
---|---|
[Java] 탐욕 알고리즘 (Greedy) (16) | 2022.05.30 |
[Java] 시간 복잡도 (Time Complexity) (9) | 2022.05.30 |
[Java] Optional Class (14) | 2022.05.28 |
[Java] 스트림 (Stream) (스트림 생성) (6) | 2022.05.28 |