In deze tutorial leer je over lineair zoeken. Ook vindt u werkende voorbeelden van lineair zoeken in C, C ++, Java en Python.
Lineair zoeken is het eenvoudigste zoekalgoritme dat in opeenvolgende volgorde naar een element in een lijst zoekt. We beginnen aan het ene uiteinde en controleren elk element totdat het gewenste element niet is gevonden.
Hoe werkt lineair zoeken?
De volgende stappen worden gevolgd om een element k = 1
in de onderstaande lijst te zoeken .

- Begin bij het eerste element, vergelijk k met elk element x.
Vergelijk met elk element
- Als
x == k
, retourneer de index.Element gevonden
- Anders wordt de terugkeer niet gevonden.
Lineair zoekalgoritme
LinearSearch (array, key) voor elk item in de array als item == value zijn index retourneert
Python, Java en C / C ++ voorbeelden
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; )
Lineaire zoekcomplexiteiten
Tijdscomplexiteit: O (n)
Ruimtecomplexiteit: O(1)
Lineaire zoekapplicaties
- Voor zoekbewerkingen in kleinere arrays (<100 items).