선형 검색
2449 단어 javasearchdsaalgorithms
프로그래밍에서 이는 값 목록에서 주어진 값 위치를 찾는 프로세스입니다. 일상 생활에서 데이터 수집에서 무언가를 찾는 것과 같이 중요한 역할을 합니다. 사전에서 단어를 찾거나 군중에서 친구를 찾아야 할 수도 있습니다.
선형/순차 검색
예를 들어
arr = {18, 12, 19, 77, 29, 50} (정렬되지 않은 배열)
대상 = 77
위의 예에서 대상 값은 순차적/선형 방식으로 배열의 모든 요소와 비교됩니다.
시간 복잡도:
최선의 경우: O(1) -> 상수
How many checks will the loop make in the best case i.e the element will be found at the 0th index that is only one comparison will be made for best case.
최악의 경우: O(n)
Worst case, here it will go through every element and then it says element not found
public class Main {
public static void main(String[] args) {
int[] nums = {23, 45, 1, 2, 8, 19, -3, 16, -11, 28};
int target = 19;
int ans = linearSearch(nums, target);
System.out.println(ans);
}
// search in the array: return the index if item found
// otherwise if item not found return -1
static int linearSearch(int[] arr, int target) {
if (arr.length == 0) {
return -1;
}
// run a for loop
for (int index = 0; index < arr.length; index++) {
// check for element at every index if it is = target
int element = arr[index];
if (element == target) {
return index;
}
}
// this line will execute if none of the return statements above have executed
// hence the target not found
return -1;
}
}
선형 검색으로 내 첫 번째 leetcode 질문을 해결했습니다. 확인해 보세요Even number of digits.
선형 검색 알고리즘에 대한 자세한 설명은 이 멋진 toturial을 확인하십시오.
쿠날 쿠슈와하
언제든지 github 및 로 연락해 주세요. 감사합니다.
Reference
이 문제에 관하여(선형 검색), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/rukundob451/linear-search-2ljf텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)