1. |
Outline |
|
We will learn the followings: (1) Complexity: time complexity, space complexity (2) Basic data structures: list, stack, queue, tree (3) Basic algorithms: searching, sorting, graph, pattern matching (4) Designing algorithms: recursion, dynamic programming, backtracking This course is related to DP2.
|
2. |
Objectives |
|
The aim of this course is to comprehend basic data structures and algorithms. The learners have to master the methods of analyzing and designing algorithms and should acquire the ability to apply basic techniques to actual problems.
|
3. |
Grading Policy |
|
The learners must submit two reports. After two reports are accepted, the learners can take an exam and are evaluated by the exam. The learners can get feedback from the reports in which professors write comments.
|
4. |
Textbook and Reference |
|
Masayuki Arai: "Data Structures and Algorithm using Java Applet," Kyoritsu Shupppan, 2008.
|
5. |
Requirements (Assignments) |
|
The class proceeds according to contents of the textbook. The learners must read the part of the textbook carefully then confirm concept of each class's keywords before class (1.5 hours), and take exercises written in the end of the section after the class (1.5 hours).
|
6. |
Note |
|
Not only reading the textbook, but learners should write programs to reconfirm the contents. Please install Eclipse and JDK in your computers.
|
7. |
Schedule |
|
1. The relationship between algorithm and data structures
|
2. Time and space complexity
|
3. Basic data structure (1) : Array
|
4. Basic data structure (2) : Class
|
5. Basic data structure (3) : List
|
6. Basic data structure (4) : Stack and data structures written in Java,
|
7. Basic data structure (5) : Tree structure
|
8. Basic data structure (6) : Balanced tree (1)
|
9. Basic data structure (7) : Balanced tree (2)
|
10. Basic data structure (8) : Heap
|
11. Search algorithm (1) : Linear searching, binary searching, and depth first searching
|
12. Search algorithm (2) : Width first searching, backtracking and hash
|
13. String matching algorithm : Knuth-Morris-Pratt method, Boyer-Moore method, and recursion
|
14. Sort algorithm : Simple sort, bubble sort, and quick sort
|
15. Summarization and examination
|
|
1. |
Outline |
|
We will learn the followings: (1) Complexity: time complexity, space complexity (2) Basic data structures: list, stack, queue, tree (3) Basic algorithms: searching, sorting, graph, pattern matching (4) Designing algorithms: recursion, dynamic programming, backtracking This course is related to DP2.
|
2. |
Objectives |
|
The aim of this course is to comprehend basic data structures and algorithms. The learners have to master the methods of analyzing and designing algorithms and should acquire the ability to apply basic techniques to actual problems.
|
3. |
Grading Policy |
|
The learners must submit two reports. After two reports are accepted, the learners can take an exam and are evaluated by the exam. The learners can get feedback from the reports in which professors write comments.
|
4. |
Textbook and Reference |
|
Masayuki Arai: "Data Structures and Algorithm using Java Applet," Kyoritsu Shupppan, 2008.
|
5. |
Requirements (Assignments) |
|
The class proceeds according to contents of the textbook. The learners must read the part of the textbook carefully then confirm concept of each class's keywords before class (1.5 hours), and take exercises written in the end of the section after the class (1.5 hours).
|
6. |
Note |
|
Not only reading the textbook, but learners should write programs to reconfirm the contents. Please install Eclipse and JDK in your computers.
|
7. |
Schedule |
|
1. The relationship between algorithm and data structures
|
2. Time and space complexity
|
3. Basic data structure (1) : Array
|
4. Basic data structure (2) : Class
|
5. Basic data structure (3) : List
|
6. Basic data structure (4) : Stack and data structures written in Java,
|
7. Basic data structure (5) : Tree structure
|
8. Basic data structure (6) : Balanced tree (1)
|
9. Basic data structure (7) : Balanced tree (2)
|
10. Basic data structure (8) : Heap
|
11. Search algorithm (1) : Linear searching, binary searching, and depth first searching
|
12. Search algorithm (2) : Width first searching, backtracking and hash
|
13. String matching algorithm : Knuth-Morris-Pratt method, Boyer-Moore method, and recursion
|
14. Sort algorithm : Simple sort, bubble sort, and quick sort
|
15. Summarization and examination
|
|
|