반응형

검색 알고리즘 3

[Java] 검색 알고리즘 - 보초법을 활용한 선형검색 과정을 출력하는 프로그램

본 포스팅은 'Do it! 자료구조와 함께 배우는 알고리즘 입문 Java편'을 스터디 한 내용입니다. 안녕하세요. 글쓰는 개발자입니다. 자료구조 관련하여 study내용을 포스팅 하다 보니, 다소 문체가 많이 딱딱했었는데요. 글쓰는 개발자 답게, 저의 문체가 아니다보니 조금은 불편(?)하기도 하고해서 연습문제처럼 제가 스스로 생각한 프로그램들은 원래의 형식대로 포스팅하고자 합니다. 배열의 선형검색 과정을 console창에 출력하는 프로그램을 만드는 것인데요. 저는 나름대로 한 번 더 생각하기 위해서 보초법을 활용하는 과정을 출력하고자 합니다. 선형검색과 관련된 내용이 숙지가 안되신 분들은 아래링크를 통해, 먼저 학습하고 오시면 이해가 빠르실거라 생각됩니다. https://backstreet-programm..

[Java] 검색 - 선형(순차)검색 / 보초법

본 포스팅은 'Do it! 자료구조와 함께 배우는 알고리즘 입문 Java편'을 스터디 한 내용입니다. 선형 검색 원하는 키(key)값을 갖는 요소를 만날 때 까지 맨 앞부터 순서대로 요소를 검색하는 것을 선형(linear) 또는 순차(sequential) 알고리즘 이라고 함 검색의 종료 조건 ① 검색할 값과 같은 요소를 발견한 경우 (n 회, 평균 n/2회) ② 검색할 값을 발견하지 못하고 배열의 끝을 지나간 경우(n+1회) 선형검색 구현 코드 n개의 요소를 대상으로 값이 key인 요소를 선형검색하고 검색한 요소의 index를 반환함. 값이 key인 값이 여러개 존재할 경우, 최초 발견된 index만 반환하고 검색이 종료됨. import java.util.Scanner; /** * @Date 2020. ..

[Java] 검색 알고리즘

본 포스팅은 'Do it! 자료구조와 함께 배우는 알고리즘 입문 Java편'을 스터디 한 내용입니다. 검색하기 - 특정 항목에 주목하는 것은 검색하기의 공통점이며, 특정항목은 키(Key)라고 함 - 국적을 검색하는 경우 국적이 키(key)이고, 나이를 검색하는 경우 나이가 키(key)임. - 키(key)는 데이터 값 뿐만 아니라, 데이터의 '일부'임 배열에서 검색하기 1. 선형 검색 : 무작위로 늘어놓은 데이터 모임에서 검색을 수행 2. 이진 검색 : 일정한 규칙으로 늘어놓은 데이터 모임에서 아주 빠른 검색을 수행 3. 해시법 : 추가, 삭제가 자주 일어나는 데이터 모임에서 아주 빠른 검색을 수행 - 체인법 : 같은 해시 값의 데이터를 선형 리스트로 연결하는 방법 - 오픈 주소법 : 데이터를 위한 해시 ..

반응형