Course Name Year Term Period Faculty / Graduate School All Instructors Credits
32762:[2025 Spring]Algorithms and Data Structures (A8) § 32763:Computer Languages and Programming (X8) 2025 Spring Mon5 College of Science and Engineering FUKUMIZU YOHEI 2

Campus

BKC

Class Venue

Forest304

Language

日本語

Course Outline and Method

コンピュータの小型化と高性能化が大幅に進行し、誰もがスマートフォンのような小型で高性能なコンピュータを持ち歩く時代になった。一方で、我々が直面する複雑な問題を解決するにはコンピュータの性能をフルに活かすことが望まれる。本講義では、効率的なプログラムを実装するために必要な知識であるデータ構造(情報の表し方)と、その処理手順であるアルゴリズムについて系統立てて学ぶ。

Student Attainment Objectives

効率的なプログラム実装に必要となる基礎素養を身につけるとともに、直面した問題に対する適切なデータ構造およびアルゴリズムが決定できるようにする。

Recommended Preparatory Course

情報処理および情報処理演習を履修し、C言語プログラミングについて基本的な知識と実践経験を有することが望ましい。また、本講義と併せてプログラミング演習を履修し、C言語の発展的な演習を習得することを勧める。

Course Schedule

Lecture/Instructor(When there are multiple instructors) Theme
Keyword, References and Supplementary Information
-

+R授業対象科目。第11回に+R授業を実施。詳細はmanaba+Rを参照。

1

アルゴリズム序論

アルゴリズム、計算量とオーダー、NP問題

2

基本概念

関数、再帰的アルゴリズム、ポインタ、構造体

3

基本概念

グラフ、木、経路探索(ダイクストラ法)、プログラミング技法の変遷(フローチャート、PAD図、構造化プログラミング、オブジェクト指向、イベントドリブン)

4~7

基本データ構造

リスト、スタック、キュー、ヒープ

8~10

並び替え

ソートとは、基本的な手法(バケツソート、選択法、挿入法、バブルソート)

11

並び替え

マージソート、クイックソート、ヒープソート

12

データ探索

線形探索、二分探索

13

文字列の探索

基本手法、QMP法、BM法

14

さまざまなアルゴリズムの概念

分割統治法、動的計画法、グリーディー法、局所探索法、発見的アルゴリズム、遺伝アルゴリズム、シミュレーテッド・アニーリング、ニューラルネットワーク

Class Format

第1回および第10回をメディア授業(VOD配信)にて、第2回~9回、11回〜14回を面接授業(対面授業)にて実施

Recommendations for Private Study

講義の予復習をするとともに教科書の練習問題に取り組むこと。情報処理の理解が不十分なものは、よく復習しておくこと。

Grade Evaluation Method

Kind Percentage Grading Criteria etc.
Final Examination (Written) 60

講義内容についての理解度をはかる試験を実施する。

Report Examination
(A report to be submitted by the unified deadline)
0

Exams and/or Reports other than those stated above, and Continuous Assessment 
(Evaluation of Everyday Performance in Class)
40

出席状況、授業内演習、課題レポートにより評価する。

Grade Evaluation Method (Note)

講義で扱ったデータ構造やアルゴリズムについての理解力を観る

Advice to Students on Study and Research Methods

講義は教科書に沿って展開し、必要に応じて補助教材を配布する。
解説される内容はC言語プログラミングがベースとなるので、よく復習しておくこと。
また、本講は単なる言語知識のみならず、そこから実践的なプログラムにつながる論理思考を習得することを目指す。このため、受講にあたっては十分な予復習をしておくことを勧める。

Textbooks

Title Author Publisher ISBN Code Comment
アルゴリズムとデータ構造 第3版 平田富夫 森北出版 978-4-627-72653-6

Textbooks (Frequency of Use, Note)

教科書に基づいて説明するので、授業には必ず教科書を持参すること。

Reference Books

Title Author Publisher ISBN Code Comment
アルゴリズムのキホン 杉浦賢 Softbank Creative 978-4-7973-6069-1
新・明解C言語で学ぶアルゴリズムとデータ構造 柴田望洋 Softbank Creative 978-4-7973-9052-0
新・明解C言語 入門編 柴田望洋 Softbank Creative 978-4-7973-7702-6
新・解きながら学ぶC言語 柴田望洋 Softbank Creative 978-4-7973-8409-3
基礎から学ぶCプログラミング 荒木義彦, 久保幸弘, 小矢美晴 共立出版 978-4-320-12293-2
Cによるアルゴリズムとデータ構造 松原雅文, 山田敬三 森北出版 978-4-627-81871-2

Reference Books (Frequency of Use, Note)

アルゴリズム関連の参考書は多数あるので、書店で自分が気に入ったものを選べばよい。また、C言語についても参考書を持っておくことが望ましい。

Web Pages for Reference

How to Communicate with the Instructor In and Out of Class(Including Instructor Contact Information)

Learning Management System (manaba+R),Talk with Students,Other (Separate instructions will be provided)

Other Comments


【科目ナンバリング・カリキュラムマップはこちらから/Click here to see the Curriculum-Map and Course-Numbering】
URL:https://secure.ritsumei.ac.jp/students/pathways-future/course/curriculum.html/