Algorithms and Data Structures

2023-2024, C1/C2, C3/C4, C5/C6, C7 Classes
Overview | Instructors | Schedule | Assignment | Examination | Evaluation |

Overview

Course Description

Computers are machines that manipulates information. Fundamental study of computer science includes the problems how information is organized in the computer, how it can be manipulated, and how it can be utilized. The efficiency of programming and data processing is directly linked to algorithms and the structures of the data being processed. Thus, it is crucial for students of computer science to understand the concepts of information organization, information manipulation and algorithms. In this course, students learn a range of algorithms and data structures as well as how to implement them through programming exercises.

Course Objectives

Course Prerequisites

Knowledge of programming concepts is necessary. Students should complete Introduction to Programming and C Programming courses.

Text Books

Important Information

The data obtained from examinations and questioners (including past one) might be utilized for research activities to improve education. Individual can not be identified by the publication of this study. If you do not agree with the use of data in this study, please contact the course coordinator (yutaka@u-aizu.ac.jp). Please see this announcement for details.

本コースにおける試験の結果およびアンケートの結果を、過去のデータも含めて、教育改善のための研究データとして利用する場合があります。本研究の公開にあたって個人が特定されることはありません。また、実施にあたっても、個人が特定されないよう十分配慮いたします。データの利用に、同意を頂けない方は、コースコーディネータの渡部(yutaka@u-aizu.ac.jp)までご連絡ください。詳しくはこちらをご覧ください。

Instructors

Lectures

NameE-mailLab.ClassRoom
Prof. Yutaka Watanobeyutaka142-AC1/C2M2
Prof. Yan Peipeiyan102-CC3/C4M4
Prof. Jie Huangj-huang126-BC5/C6, C7LTh

Exercises

NameE-mailLab.ClassRoom
Prof. Qiangfu Zhaoqf-zhao102-AC1std1
Prof. Wenxi Chenwenxi326-CC2std2
Prof. Yan Peipeiyan102-CC3std3
Prof. Doan Hoang LehoangleC4std4
Prof. Jie Huangj-huang126-BC5std3
Prof. Deepika SaxenadeepikaC6std4

TAs/SAs

IDNameClassRoom
d8232114Kai Su C1 std1
m5261131Xiuheng Liao C1 std1
m5261122Kimika KashimotoC2std2
m5271015Kota KokubunC2std2
d8222109Pengzhi Li C3 std3
d8242104Xiang Meng C3 std3
m5262118Bowen Xue C3 std3
d8241101AMIN Md. Faizul Ibne C4 std4
d8252104MUEPU MUKENDI Daniel C4 std4
d8221103WANG ZitongC5 std3
d8232113QU LingxiaoC5 std3
m5272007KATTUMURI Vanitha C6 std4
m5261105DANDENIYA WEERASINGHEGE Hiruni Indra Dhanushi C6 std4

Schedule

Time and Place

DayPeriod

C1

C2

C3

C4

C5

C6

C7

Monday 5/6

LTh

7/8

std3

std4

Tuesday 3/4

M2

M4

M7
5/6

std1

std2

std3

std4

std3
Wedensday
Thursday 5/6

LTh

7/8

std3

std4

Friday 3/4

M2

M4

M7
5/6

std1

std2

std3

std4

std3

Time Table and Materials

# C1/C2/C3/C4 C5/C6 C7 Lecture Notes Algo. Assignment Prog. Assignment Topic
1 12/8 (Fri) 12/7 (Thu) Getting Started
2 12/12 (Tue) 12/11 (Mon) Growth of function, Sort I
3 12/15 (Fri) 12/14 (Thu) Elementary Data Structures
4 12/19 (Tue) 12/18 (Mon) Search Algorithm
5 12/22 (Fri) 12/21 (Thu) Divide and Conquer
6 1/5 (*Fri) 1/4 (*Thu) Sort II
7 1/9 (Tue) 1/11 (Thu) Tree
8 1/16 (Tue) 1/15 (Mon) Binary Search Tree
9 1/19 (Fri) 1/18 (Thu) Heaps
10 1/23 (Tue) 1/22 (Mon) Dynamic Programming
11 1/26 (Fri) 1/25 (Thu) Graph I
12 1/30 (Tue) 1/29 (Mon) Graph II
13 2/2 (Fri) 2/1 (Thu) Backtracking and Heuristic Search
14 2/6 (Tue) 2/5 (Mon) All

Assignments

Algorithm Assignment

Programming Assignment

IDCommentDeadline
AYou need to solve them for your credit.A week later
BYou need to solve them for your credit.A week later
CYou should solve several problems to get A.End of semester
DYou should solve several problems to get S (For fun!)End of semester

Examinations

Coding Examination

Please check the notes on the cover page and solve the practice problems in advance.

Final Examination

TBA

Student Evaluation

You can obtain points from the following items:

VL is to justify scores of programming assignments. If a student copies several programs of others, his/her VL is 0.5. If a student copies many programs or copies with malicious intention, his/her VL is 0.