Learnerslesson
   JAVA   
  SPRING  
  SPRINGBOOT  
 HIBERNATE 
  HADOOP  
   HIVE   
   ALGORITHMS   
   PYTHON   
   GO   
   KOTLIN   
   C#   
   RUBY   
   C++   




RUBY - LINEAR SEARCH CODE




Example :



def search(arr, n)      
	for i in 0..arr.length-1
		if(arr[i] == n) 
			return i
		end
	end		
	return -1
end

arr = [5, 3, 6, 2, 1, 4]
n = 2 # Element to be searched.

puts "The Array elements are  "

for i in 0..arr.length-1
	puts arr[i]
end	

puts "\nElement to be searched #{n}"

index = search(arr, n)

if(index == -1) 
	puts "Element is not present in the array"
else 
	puts "The element #{n} is present at index : #{index}"
end


Output :



  The Array elements are :
  5
  3
  6
  2
  1
  4

  Element to be searched : 2
  The element 2 is present at index 3

Code explanation


The above code is quite simple,


We will be searching the element 2,


n = 2  # Element to be searched.

From the array,


arr = [5, 3, 6, 2, 1, 4]

Next, we pass the array and the element 2, to the search(...) method.


index = search(arr, n)

Explanation of the def search(arr, n) method :


def search(arr, n)
	for i in 0..arr.length-1
		if(arr[i] == n)
			return i
		end
	end
	return -1
end

We need to search the element 2 from the below array.

java_Collections

So, we run a for loop. Starting from the 1st location to the end of the array.


for i in 0..arr.length-1
	if(arr[i] == n)
		return i
	end
end

And at every step, we keep on checking if the element is present in the array or not.


if(arr[i] == n)
	return i
end

If we find the element, we return that particular location.


return i
java_Collections


But, what if we are searching for an element that is not present in the array?


Say, we are searching for number 8. Which is not present in the array.


In that case, we return -1.


return -1

Which states the number is not found.


Finally, the returned value is stored in the index variable.


index = search(arr, n)

And we print it using :


puts "The element #{n} is present at index : #{index}"

Output :



  The Array elements are :
  5
  3
  6
  2
  1
  4

  Element to be searched : 2
  The element 2 is present at index 3