# Algorithms

Lecturer Takashi WATANABE, Professor School of Informatics and Sciences, 2016 Spring School of Information Science (2・1.5 hours / session One session / week 15 weeks / semester)

### Key Features

The academic field of algorithms is now increasing. You will learn about some of the representative algorithms and experience how to use them in practices.

Some information technology examinations include problems that involve algorithms. In these cases, you will realize that these problems are similar to those you have learned in the algorithm course.

You can review the course of programming and use the knowledge to apply algorithms to concrete problems. You will also confirm your knowledge of algorithms by tracing the step-by-step processes of problem solving, even though it may be difficult for you to make a program.

During the last five or ten minutes of each class, you will have to opportunity to join in discussion about your questions and/or what you have learned in the class.

### Course Contents

1. BNF, regular expressions
2. basic algorithms and recursive algorithms
3. processing of lists and hash
4. processing of graphs
5. trees
6. sorting
7. searching
8. information theory

### References

No special references are required. Depending upon your request, the teacher will introduce you to some useful materials.

### Contents of the lectures

The lectures are given on algorithms that determine problem solving processes in computers. Some of the algorithms are used to demonstrate how to use them in problem solving.

Algorithms Assignments

### Course Schedule

SessionContents
1BNF, regular expressions
2basic algorithms and recursive algorithms (review of programming)
3processing of lists
4processing of hash
5processing of graphs (definition of the graph and minimum const spanning tree)
6processing of graphs (non-directional tree, minimum cost directed tree)
7trees (definition of tree, traverse and binary tree)
8trees (complete binary tree, heap)
9trees (processing of complete binary tree)
10sorting (classical methods)
11sorting (merge sort, quick sort, heap sort)
12sorting (other useful sorts)
13searching (simple search)
14searching (cost-based search)
15information theory

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15