Search
A Search Algorithm finds something
What is a Search Algorithm?π§
A Search Algorithm finds something.

π Linear Search vs Binary Search π
πLinear Search is an algorithm which looks at each item one by one in unordered list until the item is found.
Looking for scissors in the junk drawerβοΈ
Matching a single sock to the pair in a pile of laundry π§¦
Checking out the old photo album with grandma π΅
πBinary Search is an algorithm which continually splits an ordered list in half until the item is found.
Finding a specific page number in a book π
A person would look like so to find a specific page number
500, 600, 580, 581, 582
Not like this
1,2,3,4,5,6,7,8,9,10,11...582
Searching for an old holiday photo in a phoneπ
Search by year
Search by month
Search by day
πLinear Search vsπBinary Search in a heads up comparison on the same list.
Array:
[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
Goal:
Find the number 14
Linear Search:
1,2,3,4,5,6,7,8,9,10,11,12,13,14
Binary Search:
10,15,14
π§οΈBFS: Breadth First Search vs DFS: Depth First Searchπ©οΈ
π§οΈBFS: Breadth First Search algorithm Flows in every direction evenly to find the item. In a tree data structure for example it would search for the item in all the nodes by each level(floor). Dropping one level & then explore all nodes, dropping one level then explore all nodes, etc..
Tree branches growing out
Root system expanding out
π©οΈDFS: Depth First Search algorithm Strikes each direction one by one to find the item. In a tree data structure for example it would search for the item by exploring a branch all the way to the bottom of a tree then trying a different branch all the way to the bottom.
Lightning strikes
Example Tree
A Tree Data Structure
Start
'
-------------------
' '
* *
' '
---------- ----------
' ' ' '
* * * *
' ' ' '
--- --- --- ---
' ' ' ' ' ' ' '
* * * * * * * *
BFS Example: first 8 nodes found
Breadth First Search
1
'
-------------------
' '
2 3
' '
---------- ----------
' ' ' '
4 5 6 7
' ' ' '
--- --- --- ---
' ' ' ' ' ' ' '
8 * * * * * * *
DFS Example: first 4 nodes found
Depth First Search
1
'
-------------------
' '
2 *
' '
---------- ----------
' ' ' '
3 * * *
' ' ' '
--- --- --- ---
' ' ' ' ' ' ' '
4 * * * * * * *
Last updated
Was this helpful?