Linear search

2024. 3. 26. 00:45·CS/Data Structure
728x90
반응형

Array (배열)

  • 정의 : 연속된 주소, 동일한 타입
  • 장점 : n개 중 k번째 access가 상수 시간에 가능, Search가 빠름(경우에 따라 다를 수는 있음)
  • 단점 : 크기 변화 비용이 크다, Insert, Delete가 느릴 수 있다.
  • 사용 : 변화가 없거나 드문 자료에 사용함

Linear Search (선형 검색)

순서대로 전부 탐색하는 검색 방법

 

출처 : https://www.geeksforgeeks.org/what-is-linear-search/

#include <stdio.h>

int linear_search(int a[], int n, int x){
    for (int i = 0; i < n; i++) if(a[i]==x) return i; // a[i] or *(a + i)
    return -1; // 찾지 못하면 -1을 return 하도록 약속함
}

int main(){
    int a[10] = {2, 4, 5, 8, 9, 10, 1, 3, 7, 6};
    printf("%d\n", linear_search(a, 10, 3));
}
  • 찾지 못하면 -1을 return 하도록 약속함
  • 배열의 이름은 주소 : a[i] == *(a+i)
  • O(n) 
  • Sorting이 되면 더 빨리 검색할 수 있음

 

728x90
반응형

'CS > Data Structure' 카테고리의 다른 글

[ Arrays for search, insert, delete ] Packed unsorted  (2) 2024.04.09
Merge Sort  (0) 2024.04.09
Selection Sort  (0) 2024.03.30
Binary search  (2) 2024.03.29
수학적 귀납법과 명제  (4) 2024.03.25
'CS/Data Structure' 카테고리의 다른 글
  • Merge Sort
  • Selection Sort
  • Binary search
  • 수학적 귀납법과 명제
min_zu
min_zu
  • min_zu
    민주제도
    min_zu
  • 전체
    오늘
    어제
    • ._. (176)
      • AI (2)
        • DeepLearning (2)
        • CS231n (0)
      • Web (2)
        • ReactJS (0)
      • CS (83)
        • OS (7)
        • Data Structure (23)
        • Computer Architecture (8)
        • Computer Network (20)
        • Algorithm (25)
      • Linux (3)
        • KaliLinux (0)
        • Docker (1)
      • Hacking (83)
        • Write Up (25)
        • Pwnable (13)
        • Reversing (2)
        • Cryptography (12)
        • Web Hacking (4)
        • Window (6)
        • Network (7)
        • Web3 (13)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Linux
    Web
    WinAFL
    Tree
    AI
    Search
    DataStructure
    OS
    Sort
    ComputerArchitecture
    Graph
    DeepLearning
    UTM
    Mac
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
min_zu
Linear search
상단으로

티스토리툴바