Searching in Arrays using Java (Linear and Binary Search Explained)
Searching in Arrays (Linear and Binary Search in Java)
Introduction
Searching ka matlab hota hai kisi collection of data me se ek specific element ko find karna.
Programming me almost har real-world application me searching use hoti hai:
-
Google search
-
Contact list me naam find karna
-
E-commerce site par product search
-
Bank database me account search
Dictionary me word search karna
Isliye searching algorithms DSA ka core concept hain.
Array me searching ke do main approaches hote hain:
-
Linear Search
-
Binary Search
Dono ka working style aur efficiency different hoti hai.
Programming me bhi ye bahut important concept hai.
Linear Search
Definition
Linear Search ek simple searching algorithm hai jisme hum array ke har element ko sequentially check karte hain jab tak target value mil na jaye.
Real Life Example
Socho tum classroom me ho aur kisi specific student ko dhoondh rahe ho.
Tum ek-ek student se poochte jaoge.
Ye linear search hai.
Concept Samjho Simple Tarike Se
Socho tumhare paas ek bag hai jisme 10 books hain.
Tumhe “Math” wali book dhoondhni hai.
Tum kya karoge?
-
Pehli book check karoge
-
Fir doosri
-
Fir teesri
Jab tak Math wali book mil na jaye.
Ye hi Linear Search hai.
Java Implementation
Time Complexity
Best Case → O(1)
Worst Case → O(n)
When to Use Linear Search?
✔ Jab array small ho
✔ Jab array sorted na ho
✔ Jab simplicity important ho
Binary Search
Definition
Binary Search ek efficient searching algorithm hai jo sorted array par kaam karta hai.
Isme hum array ko repeatedly half karte hain jab tak element mil na jaye.
Binary Search divide-and-conquer technique par based hai.
Real Life Example
Dictionary me word search karte waqt:
-
Middle page open karte ho
-
Agar word usse pehle aata hai → left side
-
Agar baad me aata hai → right side
Ye binary search hai.
Condition
Array sorted hona chahiye.
Java Implementation
Time Complexity
Best Case → O(1)
Worst Case → O(log n)
Binary search linear search se faster hota hai.
Why We Use left + (right - left) / 2?
Ye overflow avoid karne ke liye best practice hai.
Interviews me ye detail poochi ja sakti hai.
Linear vs Binary Search
Linear Search:
✔ Works on unsorted array
❌ Slower
Binary Search:
✔ Very fast
❌ Requires sorted array
Important Interview Insight
Agar data sorted hai → Binary Search best choice.
Agar data unsorted hai → Linear Search use karo.
Kabhi-kabhi interviewer edge cases bhi poochta hai:
-
Target nahi mila
-
Duplicate elements
-
Empty array
In sab ka handle karna important hai.
Conclusion
Searching DSA ka basic aur important concept hai.
Interviews me frequently poocha jata hai.
Agar data sorted hai → Binary Search use karo
Agar data unsorted hai → Linear Search
Next article me hum Sorting Algorithms (Bubble, Selection, Insertion in Java) start karenge.
Comments
Post a Comment