Linear Search

Kategori: C , 02 Temmuz 2019 , JanFranco


Searching algoritmalarından, linear search algoritmasını inceleyeceğiz. Algoritma oldukça basittir. Dizinin veya bir yapının (genellikle) başından başlayıp, tek tek elemanlarını kontrol ederiz. Nasıl kullanacağımızı görelim:


#include <stdio.h>
#include <stdlib.h>

int linear_search(int arr[], int size, int number){
    int i;
    for(i=0; i<size; i++){
        if(arr[i] == number){
            return i;
        }
    }
    return -1;
}

int main() {

    int i, length, pos;
    int arr[100000];
    for(i=0; i<100000; i++){
        arr[i] = rand() % 1000;
    }
    length = sizeof(arr) / sizeof(arr[0]);

    pos = linear_search(arr, length, 999);

    if(pos == -1){
        printf("Not found!");
    }
    else{
        printf("Found at %d. position\n", pos);
        printf("%d. element of array is %d", pos, arr[pos]);
    }

    return 0;
}
Fonksiyonda eğer eleman bulunursa pozisyon, bulunmazsa -1 dönecektir. main fonksiyonunda ise 100.000 elemanlı bir dizi oluşturduk ve 0-1000 arası random sayılarla diziyi doldurduk. Daha sonra linear_search fonksiyonunu kullandık ve dönen değerin -1 olup olmadığını kontrol ettik. -1 değilse ekrana pozisyonu bastırdık.


Sonraki Yazı: Binary Search
Yorumlar

Henüz bir yorum bulunmuyor.
Yorum bırakın