From 58fec90013fd0a8ffd1483ac81352f44321669c7 Mon Sep 17 00:00:00 2001 From: Naveen Hegde Date: Tue, 26 Dec 2017 16:29:37 +0530 Subject: [PATCH] Rectified Linear Search Previous programme was returning key instead of index. Fixed it. Changed size of array from 10 to variable sized array. --- Search/Linear Search.cpp | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/Search/Linear Search.cpp b/Search/Linear Search.cpp index 105ac7ee7..fd381756d 100644 --- a/Search/Linear Search.cpp +++ b/Search/Linear Search.cpp @@ -1,13 +1,13 @@ #include using namespace std; -int LinearSearch(int *array, int key) +int LinearSearch(int *array, int size, int key) { - for (int i = 0; i < 10; ++i) + for (int i = 0; i < size; ++i) { if (array[i]==key) { - return key; + return i; } } @@ -17,19 +17,24 @@ int LinearSearch(int *array, int key) int main() { - int array[10]; + int size; + cout<<"\nEnter the size of the Array : "; + cin >> size; + + int array[size]; int key; //Input array - cout<<"\nEnter the Array of 10 numbers : "; - for (int i = 0; i < 10; i++) + cout<<"\nEnter the Array of " << size << " numbers : "; + for (int i = 0; i < size; i++) { cin>>array[i]; } + cout<<"\nEnter the number to be searched : "; cin>>key; - int index=LinearSearch(array, key); + int index=LinearSearch(array, size, key); if (index!=-1) { cout<<"\nNumber found at index : "<