Lineaarne otsing

Selles õpetuses saate teada lineaarse otsingu kohta. Samuti leiate lineaarse otsingu C, C ++, Java ja Python toimivad näited.

Lineaarotsing on lihtsaim otsimisalgoritm, mis otsib loendis olevat elementi järjestuses. Alustame ühest otsast ja kontrollime kõiki elemente, kuni soovitud elementi ei leita.

Kuidas lineaarne otsing töötab?

Allolevast k = 1loendist elemendi otsimiseks järgitakse järgmisi samme .

Massiiv otsimiseks
  1. Alustage esimesest elemendist, võrrelge k iga elemendiga x. Võrdle iga elemendiga
  2. Kui x == ktagastate indeksi. Element leitud
  3. Muidu tagasitulekut ei leitud.

Lineaarse otsingu algoritm

Lineaarne otsing (massiiv, võti) massiivi iga üksuse jaoks, kui element == väärtus tagastab selle indeksi

Pythoni, Java ja C / C ++ näited

Python Java C C ++
 # Linear Search in Python def linearSearch(array, n, x): # Going through array sequencially for i in range(0, n): if (array(i) == x): return i return -1 array = (2, 4, 0, 1, 9) x = 1 n = len(array) result = linearSearch(array, n, x) if(result == -1): print("Element not found") else: print("Element found at index: ", result)
 // Linear Search in Java class LinearSearch ( public static int linearSearch(int array(), int x) ( int n = array.length; // Going through array sequencially for (int i = 0; i < n; i++) ( if (array(i) == x) return i; ) return -1; ) public static void main(String args()) ( int array() = ( 2, 4, 0, 1, 9 ); int x = 1; int result = linearSearch(array, x); if (result == -1) System.out.print("Element not found"); else System.out.print("Element found at index: " + result); ) )
 // Linear Search in C #include int search(int array(), int n, int x) ( // Going through array sequencially for (int i = 0; i < n; i++) if (array(i) == x) return i; return -1; ) int main() ( int array() = (2, 4, 0, 1, 9); int x = 1; int n = sizeof(array) / sizeof(array(0)); int result = search(array, n, x); (result == -1) ? printf("Element not found") : printf("Element found at index: %d", result); )
 // Linear Search in C++ #include using namespace std; int search(int array(), int n, int x) ( // Going through array sequencially for (int i = 0; i < n; i++) if (array(i) == x) return i; return -1; ) int main() ( int array() = (2, 4, 0, 1, 9); int x = 1; int n = sizeof(array) / sizeof(array(0)); int result = search(array, n, x); (result == -1) ? cout << "Element not found" : cout << "Element found at index: " << result; )

Lineaarse otsingu keerukused

Aja keerukus: O (n)

Ruumi keerukus: O(1)

Lineaarsed otsingurakendused

  1. Operatsioonide otsimiseks väiksemates massiivides (<100 üksust).

Huvitavad Artiklid...