# 01 - Linear Search

1. In computer science, a linear search is also sometimes referred to as a:

Indexed Search

Mixed Search

Sequential search

Easy Search

2. The linear search is simply a method for….

…sorting a list

…finding a list within a target

…finding all the elements of a list and sorting them

...finding a target value within a list

3. Linear search runs in at worst linear time and makes at most n comparisons, where n is ….

the number of the first element

the number of the second element

the length of the list

the letter 'n'

4. Analyse the code below - what is the search criteria here?
```#demonstration of linear search

def linearsearch(x,mylist):
found=False

for i in range(len(mylist)):
if x==mylist[i]:
found=True
break
else:
if x not in mylist:
break

if found==False:
else:
print("Found in position",i)

mylist=[1,2,3,4,5]
x=int(input("Enter a number:"))
linearsearch(x,mylist)

```

'x' is input by the user and is the search criteria

'int' is the search criteria

'found' is the input and is the search criteria

'mylist' is the search criteria in the coded example

5. In a linear search, each element of the list is checked sequentially (one after the other) starting …
`If you are able, watch the video and try and code this yourself in order to fully master it.`

at the beginning of the list

in the middle of the list

at a random point in the list

at the end of the list

6. Analyse the code below - what will the output be of this code?
```def Sequential_Search(dlist, item):

pos = 0
found = False

if dlist[pos] == item:
found = True
else:
pos = pos + 1

return found, pos

print(Sequential_Search([11,23,58,31,56,77,43,12,65,19],12))
```

False,12

False, 7

True, 7

True, 12

7. In the following example (feel free to play around with it) what is "pos"?

It is a variable that shows the result of the search

It is a variable indicating the position of the element to be searched, starting at 0 (first element)

It is a list in itself which shows the position of the elements

It is a variable that shows how to position the result once found

8. What is happening on line 10 with the code: pos = pos + 1

This is called adding one. If the element is found, add one and output result

This is called incrementation. It is adding one so that numbers aren't too short

This is called incrementation. If the element searched for is not found, increment the value of 'pos'

None of the options provided are correct

9. When is a linear search most useful?

When the list is over 256 million elements long

When the list is very small or the element searched for is near the start

When the list is very large and the element searched for is at the end

When the list is very large and can be sorted easily

10. What is one benefit of using a linear search over a binary search?

In a linear search, the list does not have to be sorted (in order)

None of the options provided are correct

In a linear search, the algorithm puts the list in order which is handy

In a linear search, the time taken is always four times as quick as a binary search