इस लेख में, हम समझेंगे कि ऐरे में एलिमेंट को रिकर्सिवली लीनियरली कैसे सर्च किया जाता है। लीनियर सर्च एक बहुत ही सरल सर्च एल्गोरिदम है जिसमें सभी आइटम्स के लिए क्रमिक खोज की जाती है।
उदाहरण
मान लीजिए हमारा इनपुट है:
Input array: 14 20 35 47 50 65 72 81 90 99 Key element: 72
वांछित आउटपुट होगा:
The element 72 is present at position: 6
एल्गोरिदम
चरण 1 - शुरू करें चरण 2 - एक स्ट्रिंग ऐरे घोषित करें: input_array, दो इंटीजर: key_element और index चरण 3 - मान परिभाषित करें चरण 4 - ऐरे के माध्यम से पुनरावृति करें चरण 5 - खोजे जाने वाले एलिमेंट को परिभाषित करें। इन पैरामीटर्स को पास करके रिकर्सिव मेथड को इनवोक करें चरण 6 - एक 'if' कंडीशन परिभाषित करें जिसमें शर्त हो कि विफलता -1 वापस करेगी, अन्यथा एलिमेंट की पोजीशन चरण 7 - इसे कंसोल पर प्रदर्शित करें चरण 8 - रुकें
उदाहरण 1: इंटीजर्स पर लीनियर सर्च
यहां, हम इंटीजर्स पर लीनियर सर्च दिखाते हैं।
public class LinearSearch {
static int recSearch(int input_array[], int l, int r, int key_element) {
if (r < l)
return -1;
if (input_array[l] == key_element)
return l;
if (input_array[r] == key_element)
return r;
return recSearch(input_array, l+1, r-1, key_element);
}
public static void main(String[] args) {
int input_array[] = {14, 20, 35, 47, 50, 65, 72, 81, 90, 99};
System.out.println("ऐरे के एलिमेंट्स परिभाषित हैं: ");
for (int i : input_array) {
System.out.print(i + " ");
}
int key_element = 72;
System.out.println("\n\nऐरे में खोजा जाने वाला एलिमेंट है: " + key_element);
int index = recSearch(input_array, 0, input_array.length-1, key_element);
if (index != -1)
System.out.println("\nएलिमेंट " + key_element + " पोजीशन पर मौजूद है: " + index);
else
System.out.println("एलिमेंट " + key_element + " मौजूद नहीं है: ");
}
}
आउटपुट
ऐरे के एलिमेंट्स परिभाषित हैं: 14 20 35 47 50 65 72 81 90 99 ऐरे में खोजा जाने वाला एलिमेंट है: 72 एलिमेंट 72 पोजीशन पर मौजूद है: 6
उदाहरण 2: स्ट्रिंग्स पर लीनियर सर्च
यहां, हम स्ट्रिंग्स पर लीनियर सर्च दिखाते हैं।
public class Demo {
static int recSearch(String input_array[], int l, int r, String key_element) {
if (r < l)
return -1;
if (input_array[l] == key_element)
return l;
if (input_array[r] == key_element)
return r;
return recSearch(input_array, l+1, r-1, key_element);
}
public static void main(String[] args) {
String input_array[] = { "Scala", "Java", "Python", "Mysql"};
System.out.println("ऐरे के एलिमेंट्स परिभाषित हैं: ");
for (String i : input_array) {
System.out.print(i + " ");
}
String key_element = "Java";
System.out.println("\n\nऐरे में खोजा जाने वाला एलिमेंट है: " + key_element);
int index = recSearch(input_array, 0, input_array.length-1, key_element);
if (index != -1)
System.out.println("\nएलिमेंट " + key_element + " पोजीशन पर मौजूद है: " + index);
else
System.out.println("एलिमेंट " + key_element + " मौजूद नहीं है: ");
}
}
आउटपुट
ऐरे के एलिमेंट्स परिभाषित हैं: Scala Java Python Mysql ऐरे में खोजा जाने वाला एलिमेंट है: Java एलिमेंट Java पोजीशन पर मौजूद है: 1