Assignment 01 Computing
Assignment 01 Computing
ALGORITHM DESIGN
NGUYEN TRAN NHAT VU
BKC1903
BTEC-C01K11
OUTLINE
I. ALGORITHM
PROGRAM
I. ALGORITHM
YES NO
j=i i< n i=0 arr [n]
YES NO
j< n i += 1 END
BubbleSort(list)
for i = 0 to len(list) – 1 do:
swapped = false
for k = i to len(list) – 1 do:
if list[k] > list[k+1]
swap(list[k], list[k+1])
swapped = true
//No swapped means sorted
if (!swapped)
break
return list
LINEAR SEARCH ALGORITHM START
arr [n],
END i=0
item
NO
i< n i += 1
YES
YES
arr[i] == NO
item
CODING LINEAR
SEARCH
ALGORITHM
II. IMPLEMENTING
ALGORITHMS INTO THE
PROGRAM
“IDEALS ARE DANGEROUS THINGS. REALITIES ARE
BETTER. THEY WOUND, BUT THEY'RE BETTER.”
OSCAR WILDE, LADY WINDERMERE'S FAN
QUICK SORT ALGORITHM
13 21 15 3 12 9 14 7 6
3 9 7 6 12 13 21 15 14
3 6 7 9 12 13 14 15 21
3 6 7 9 12 13 14 15 21
3 6 7 9 12 13 14 15 21
QUICK SORT ALGORITHM
Advantages
• High performance
• Easy implementation
Disadvantages
• Unstable
• Heavily decrease in speed in worse cases
QUICK SORT ALGORITHM
QUICK SORT ALGORITHM
CODING QUICK SORT
ALGORITHM
LINEAR SEARCH ALGORITHM
Advantages
• Easy to understand and implement
• No sorting required
• Suitable for small list sizes
Disadvantages
• Time inefficient compared to other algorithms
• Not suitable for large-sized lists
III. BIG-O NOTATION
f(n) = 3
BIG-O NOTATION
f(n) = 3n + 2
THANK YOU FOR
LISTENING
ASSIGNMENT 01: ALGORITHM DESIGN