ਲੀਨੀਅਰ ਖੋਜ (Linear Search) ਐਲਗੋਰਿਦਮ ਵਿੱਚ Java: ਖੋਜ ਅਤੇ ਤੱਤ ਲੱਭਣਾ

ਲੀਨੀਅਰ ਖੋਜ ਐਲਗੋਰਿਦਮ Java ਪ੍ਰੋਗਰਾਮਿੰਗ ਵਿੱਚ ਇੱਕ ਸਧਾਰਨ ਅਤੇ ਬੁਨਿਆਦੀ ਢੰਗ ਹੈ, ਜੋ ਇੱਕ ਸੂਚੀ ਜਾਂ ਇੱਕ ਐਰੇ ਦੇ ਅੰਦਰ ਇੱਕ ਖਾਸ ਤੱਤ ਲੱਭਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਇਹ ਪਹੁੰਚ ਹਰੇਕ ਤੱਤ ਨੂੰ ਪਾਰ ਕਰਕੇ ਅਤੇ ਖੋਜ ਮੁੱਲ ਨਾਲ ਇਸਦੀ ਤੁਲਨਾ ਕਰਕੇ ਕੰਮ ਕਰਦੀ ਹੈ।

ਰੇਖਿਕ ਖੋਜ ਐਲਗੋਰਿਦਮ ਕਿਵੇਂ ਕੰਮ ਕਰਦਾ ਹੈ

ਲੀਨੀਅਰ ਖੋਜ ਐਲਗੋਰਿਦਮ ਸੂਚੀ ਜਾਂ ਐਰੇ ਦੇ ਪਹਿਲੇ ਤੱਤ ਤੋਂ ਸ਼ੁਰੂ ਹੁੰਦਾ ਹੈ। ਇਹ ਖੋਜ ਮੁੱਲ ਦੀ ਮੌਜੂਦਾ ਤੱਤ ਦੇ ਮੁੱਲ ਨਾਲ ਤੁਲਨਾ ਕਰਦਾ ਹੈ। ਜੇਕਰ ਕੋਈ ਅਨੁਸਾਰੀ ਮੁੱਲ ਮਿਲਦਾ ਹੈ, ਤਾਂ ਐਲਗੋਰਿਦਮ ਸੂਚੀ ਜਾਂ ਐਰੇ ਵਿੱਚ ਤੱਤ ਦੀ ਸਥਿਤੀ ਵਾਪਸ ਕਰਦਾ ਹੈ। ਜੇਕਰ ਨਹੀਂ ਮਿਲਦਾ, ਤਾਂ ਐਲਗੋਰਿਦਮ ਅਗਲੇ ਐਲੀਮੈਂਟ 'ਤੇ ਜਾਣਾ ਜਾਰੀ ਰੱਖਦਾ ਹੈ ਅਤੇ ਤੁਲਨਾ ਪ੍ਰਕਿਰਿਆ ਨੂੰ ਉਦੋਂ ਤੱਕ ਜਾਰੀ ਰੱਖਦਾ ਹੈ ਜਦੋਂ ਤੱਕ ਮੁੱਲ ਨਹੀਂ ਮਿਲ ਜਾਂਦਾ ਜਾਂ ਸਾਰੇ ਤੱਤਾਂ ਨੂੰ ਪਾਰ ਨਹੀਂ ਕੀਤਾ ਜਾਂਦਾ।

ਲੀਨੀਅਰ ਖੋਜ ਐਲਗੋਰਿਦਮ ਦੇ ਫਾਇਦੇ ਅਤੇ ਨੁਕਸਾਨ

ਲਾਭ:

  • ਸਰਲ ਅਤੇ ਸਮਝਣ ਯੋਗ: ਇਹ ਐਲਗੋਰਿਦਮ ਲਾਗੂ ਕਰਨਾ ਅਤੇ ਸਮਝਣਾ ਆਸਾਨ ਹੈ।
  • ਕਿਸੇ ਵੀ ਡੇਟਾ ਕਿਸਮ ਦੇ ਨਾਲ ਕੰਮ ਕਰਦਾ ਹੈ: ਰੇਖਿਕ ਖੋਜ ਕਿਸੇ ਵੀ ਕਿਸਮ ਦੀ ਸੂਚੀ ਜਾਂ ਐਰੇ ਡੇਟਾ ਤੇ ਲਾਗੂ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ.

ਨੁਕਸਾਨ:

  • ਘੱਟ ਕਾਰਗੁਜ਼ਾਰੀ: ਇਸ ਐਲਗੋਰਿਦਮ ਲਈ ਸੂਚੀ ਜਾਂ ਐਰੇ ਦੇ ਸਾਰੇ ਤੱਤਾਂ ਵਿੱਚੋਂ ਲੰਘਣ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ, ਜਿਸ ਨਾਲ ਵੱਡੇ ਡੇਟਾਸੈਟਾਂ ਲਈ ਘੱਟ ਪ੍ਰਦਰਸ਼ਨ ਹੋ ਸਕਦਾ ਹੈ।

ਉਦਾਹਰਨ ਅਤੇ ਵਿਆਖਿਆ

ਵਿੱਚ ਇੱਕ ਪੂਰਨ ਅੰਕ ਐਰੇ ਵਿੱਚ ਇੱਕ ਖਾਸ ਪੂਰਨ ਅੰਕ ਲੱਭਣ ਲਈ ਲੀਨੀਅਰ ਖੋਜ ਐਲਗੋਰਿਦਮ ਦੀ ਵਰਤੋਂ ਕਰਨ ਦੀ ਇੱਕ ਉਦਾਹਰਣ 'ਤੇ ਵਿਚਾਰ ਕਰੋ Java ।

public class LinearSearchExample {  
    public static int linearSearch(int[] array, int target) {  
        for(int i = 0; i < array.length; i++) {  
            if(array[i] == target) {  
                return i; // Return position if found  
            }  
        }  
        return -1; // Return -1 if not found  
    }  
  
    public static void main(String[] args) {  
        int[] numbers = { 4, 2, 7, 1, 9, 5 };  
        int target = 7;  
  
        int position = linearSearch(numbers, target);  
  
        if(position != -1) {  
            System.out.println("Element " + target + " found at position " + position);  
        } else {  
            System.out.println("Element " + target + " not found in the array");  
        }  
    }  
}  

ਇਸ ਉਦਾਹਰਨ ਵਿੱਚ, ਅਸੀਂ ਇੱਕ ਪੂਰਨ ਅੰਕ ਐਰੇ ਵਿੱਚ ਨੰਬਰ 7 ਨੂੰ ਲੱਭਣ ਲਈ ਲੀਨੀਅਰ ਖੋਜ ਐਲਗੋਰਿਦਮ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹਾਂ। ਐਲਗੋਰਿਦਮ ਹਰ ਇੱਕ ਤੱਤ ਵਿੱਚੋਂ ਲੰਘਦਾ ਹੈ ਅਤੇ ਖੋਜ ਮੁੱਲ ਨਾਲ ਇਸਦੀ ਤੁਲਨਾ ਕਰਦਾ ਹੈ। ਇਸ ਸਥਿਤੀ ਵਿੱਚ, ਨੰਬਰ 7 ਐਰੇ ਵਿੱਚ ਸਥਿਤੀ 2(0-ਅਧਾਰਿਤ ਸੂਚਕਾਂਕ) 'ਤੇ ਪਾਇਆ ਜਾਂਦਾ ਹੈ।

ਹਾਲਾਂਕਿ ਇਹ ਉਦਾਹਰਨ ਦਰਸਾਉਂਦੀ ਹੈ ਕਿ ਕਿਵੇਂ ਲੀਨੀਅਰ ਖੋਜ ਐਲਗੋਰਿਦਮ ਇੱਕ ਪੂਰਨ ਅੰਕ ਐਰੇ ਵਿੱਚ ਇੱਕ ਤੱਤ ਲੱਭ ਸਕਦਾ ਹੈ, ਇਹ Java ਪ੍ਰੋਗਰਾਮਿੰਗ ਵਿੱਚ ਹੋਰ ਖੋਜ ਦ੍ਰਿਸ਼ਾਂ 'ਤੇ ਵੀ ਲਾਗੂ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।