1. Able to explain the concept of algorithm logically.
2. Able to explain algorithms such as alignment, search, etc.
3. Able to explain the various ways to represent data inside a computer (data structures).
Outline:
Through learning basic algorithms and data structures and implementing them using programming languages, students will acquire logical thinking and problem-solving skills essential for software engineers.
Style:
Notice:
Since the emphasis is on the algorithmic approach, the programming language will be explained only to the essentials. Students are encouraged to ask questions if they do not understand something. Students are expected to deepen their understanding through assignments and quizzes given in class.
|
|
|
Theme |
Goals |
1st Semester |
1st Quarter |
1st |
Algorithm Basics |
Can explain the concept of algorithms and programming flow.
|
2nd |
Algorithm Basics |
Can explain the basic forms of algorithms and structuring theorems.
|
3rd |
Flowchart Basics |
To be able to use a flowchart to graphically represent an algorithm with variables.
|
4th |
Flowchart Basics |
To be able to use a flowchart to graphically represent an algorithm involving conditional branches and loops.
|
5th |
Arrays |
Use a flowchart to graphically represent a basic algorithm using arrays.
|
6th |
Array |
Can use flowcharts to diagrammatically represent applied algorithms using arrays.
|
7th |
Mid-term examinations in the first semester |
|
8th |
Stack |
Understand and explain data structures of stacks.
|
2nd Quarter |
9th |
Queue |
Understand and explain the data structure of a queue.
|
10th |
Tree structure |
Understand and explain the concept of tree structure.
|
11th |
Binary search tree |
Understand and explain the data structure of binary search trees.
|
12th |
Stack and queue implementation |
Understand and explain how to implement stacks and queues.
|
13th |
Algorithm for finding prime numbers |
Understand and explain the algorithm for finding prime numbers.
|
14th |
Algorithm for finding greatest common divisor |
Understand and explain the algorithm for finding the greatest common divisor.
|
15th |
Algorithm for prime factorization |
Understand and explain the algorithm for prime factorization.
|
16th |
Return of Answers |
|
2nd Semester |
3rd Quarter |
1st |
Linear search method |
Understand and explain the algorithm for linear search.
|
2nd |
Binary search method |
Understand and explain the algorithm for binary search.
|
3rd |
Hash search method |
Understand and explain the algorithm for hash search.
|
4th |
Basics of sorting |
Understand and explain the basics of sorting algorithms.
|
5th |
Selection sort |
Understand and explain the algorithm of selection sort.
|
6th |
Bubble Sort |
Understand and explain the algorithm of bubble sort.
|
7th |
Insertion Sort |
Understand and explain insertion sort algorithm.
|
8th |
Late Midterm Examination |
|
4th Quarter |
9th |
Quick Sort |
Understand and explain the algorithm of quick sort.
|
10th |
Quick Sort |
Understand and explain the algorithm for quick sort.
|
11th |
Functions and Recursion |
Understand and explain the concepts of function and recursion.
|
12th |
Tower of Hanoi |
Understand and explain the algorithm for solving the Tower of Hanoi.
|
13th |
Monte Carlo method |
Understand and explain the Monte Carlo algorithm.
|
14th |
Dichotomy |
Understand and explain the algorithm for the dichotomy method.
|
15th |
Newton's method |
Understand and explain the algorithm of Newton's method.
|
16th |
Return of Answers |
|