Algorithm

Course Information

College Oyama College Year 2022
Course Title Algorithm
Course Code 0055 Course Category Specialized / Compulsory
Class Format Lecture Credits Academic Credit: 2
Department Department of Innovative Electrical and Electronic Engineering Student Grade 3rd
Term First Semester Classes per Week 2
Textbook and/or Teaching Materials Data Structure and Algorithm, Infotecserv (2014)
Instructor HIRATA Katsumi

Course Objectives

1. To understand basic constructs (sequence, selection, and repetition) used in structured programming and express them in pseudocode.
2. To understand basic algorithms for searching and sorting and express them in pseudocode.
3. To write C programs for basic searching and sorting.
4. To understand basic data structures (stack, queue, list, and tree).
5. To write pseudocode for simple data IO algorithms with stack and queue.
6. To understand basic major terms and concepts in representation and encoding of media information such as a sound and an image.

Rubric

Ideal LevelStandard LevelUnacceptable Level
1. Be able to express basic constructs in pseudocodeVery correctlyAlmost correctly with few errorsNever or with many errors
2. Express basic searching and sorting algorithms in pseudocodeVery correctlyAlmost correctly with few errorsNever or with many errors
3. Make C programs for basic searching and sortingVery correctlyAlmost correctly with few errorsNever or with many errors
4. Describe basic data structuresVery correctlyAlmost correctly with few errorsNever or with many errors
5. Write pseudocode for simple data IO algorithms with stack and queueVery correctlyAlmost correctly with few errorsNever or with many errors
6. Describe basic major terms and concepts of media information processingVery correctlyAlmost correctly with few errorsNever or with many errors

Assigned Department Objectives

学習・教育到達度目標 ⑤ See Hide

Teaching Method

Outline:
This course introduces algorithms and data structures which are essential in programming to students taking this course.
After studying the concept and importance of an algorithm and a data structure, typical algorithms and basic data structures for searching and sorting are introduced.
Keywords: programming, pseudocode, C language, algorithm, searching, sorting, data structure
Style:
Classes are conducted lectures, exercises and practices.
A small test which covers the previous lesson contents are conducted at each lesson.
Students have to read the textbook before each lesson.
Several programming exercises are assigned as your homework.
Notice:
Do not hesitate to ask if any questions. Students may ask any questions in the classroom, in the teacher's office, also using Microsoft Teams.
Although students may do assignments with discussion with each other, it is NOT allowed to submit the copy version of any deliverables made by others including on the internet. Any cheating will make scores for all assignments 0.

Characteristics of Class / Division in Learning

Active Learning
Aided by ICT
Applicable to Remote Class
Instructor Professionally Experienced

Course Plan

Theme Goals
1st Semester
1st Quarter
1st Introduction of the module and "algorithm" To explain what an algorithm is.
2nd Flow-chart, Basic constructs To express with flowcharts for a simple process with basic constructs.
3rd Pseudocode, Evaluation criteria for algorithms To express basic constructs in pseudocode.
To describe evaluation criteria for an algorithm.
4th Array and hash table To express with flowcharts and pseudocode for a simple process with arrays and hash tables.
5th Linked list To express with flowcharts and pseudocode for a simple process with linked list.
6th Stack and queue To express with flowcharts and pseudocode for a simple process with stacks and queues.
7th Tree To express with flowcharts and pseudocode for a simple process with stacks and queues.
8th Mid-term exam
2nd Quarter
9th Representation and processing of media infomation To explain fundamental knowledges about formats and digitization of media information such as audio and video.
10th Linear search To explain the principle of the linear search.
To express with flowcharts, pseudocode, and C language for a simple process with linear search.
11th Binary search, Complexity for searching To explain the principle of the binary search.
To express with flowcharts, pseudocode, and C language for a simple process with binary search.
12th Selection sort To explain the principle of the selection sort.
To express with flowcharts, pseudocode, and C language for a simple process with selection sort.
13th Bubble sort To explain the principle of the bubble sort.
To express with flowcharts, pseudocode, and C language for a simple process with bubble sort.
14th Insertion sort To explain the principle of the insertion sort.
To express with flowcharts, pseudocode, and C language for a simple process with insertion sort.
15th Merge sort, Quicksort To explain the principle of the merge sort and the quicksort.
To express with flowcharts, pseudocode, and C language for a simple process with the merge sort and the quicksort.
16th Final exam

Evaluation Method and Weight (%)

ExamQuizAssignmentTotal
Subtotal601030100
Basic Proficiency0000
Specialized Proficiency601030100
Cross Area Proficiency0000