シラバス参照

講義概要/Course Information
2024/04/28 現在

科目基礎情報/General Information
授業科目名
/Course title (Japanese)
アルゴリズムとデータ構造およびプログラミング演習
英文授業科目名
/Course title (English)
Algorithms and Data Structures and Programming Exercises
科目番号
/Code
COM401e COM401f COM401g COM401h COM401i
開講年度
/Academic year
2019年度 開講年次
/Year offered
2
開講学期
/Semester(s) offered
後学期 開講コース・課程
/Faculty offering the course
情報理工学域
授業の方法
/Teaching method
講義/演習 単位数
/Credits
3
科目区分
/Category
専門科目
開講類・専攻
/Cluster/Department
Ⅱ類
担当教員名
/Lecturer(s)
森田 啓義・小川 朋宏
居室
/Office
東2号館615・西10号館821
公開E-mail
/e-mail
morita@uec.ac.jp, ogawa@is.uec.ac.jp
授業関連Webページ
/Course website
後日公開予定
更新日
/Last update
2019/04/26 10:08:43 更新状況
/Update status
公開中
/now open to public
講義情報/Course Description
主題および
達成目標(2,000文字以内)
/Themes and goals(up to 2,000 letters)
プログラミングにおいては,与えられた問題を適切に定式化する能力が必要不可欠である.特に,効率の良い解法(アルゴリズム)と,そのための問題表現(データ構造)を設計することが重要となる.この講義では,計算量の概念を理解し,アルゴリズムの効率を意識しながら問題を適切に定式化する能力を習得することを目標として,様々な情報処理の基本となるアルゴリズムとデータ構造について講義を行い,またプログラミング演習を通じて問題の定式化能力の定着を図る.
前もって履修
しておくべき科目(1,000文字以内)
/Prerequisites(up to 1,000 letters)
基礎プログラミングおよび演習
数値解析および プログラミング演習
前もって履修しておくこ
とが望ましい科目(1,000文字以内)
/Recommended prerequisites and preparation(up to 1,000 letters)
基礎プログラミングおよび演習
数値解析および プログラミング演習
教科書等(1,000文字以内)
/Course textbooks and materials(up to 1,000 letters)
必要に応じて資料を配付する
(参考書)柴田望洋,辻亮介著,「明解C言語によるアルゴリズムとデータ構造」ソフトバンククリエイティブ
授業内容と
その進め方(2,000文字以内)
/Course outline and weekly schedule(up to 2,000 letters)
授業内容
本講義は2時限連続で実施する.1時限目では代表的なアルゴリズムおよびデータ構造について講義を行い,2時限目にその理解を深めるために演習課題を提示する.講義は,指定した参考書を適宜参照して進める.なお,本講義では,講義・演習ともにC言語を用いて行う.

授業計画
第1回:プログラミングの復習: 関数,ポインタ
第2回:プログラミングの復習: ポインタ,構造体
第3回:構造体,アルゴリズムと計算量,計算時間の計測・制御
第4回:リスト構造の実現
第5回:スタックとキュー
第6回:探索
第7回:2分探索
第8回:ハッシュ法
第9回:木構造と2分探索木
第10回:再帰的アルゴリズム
第11回:ヒープ
第12回:基本ソート
第13回:クイックソート
第14回:文字列の基本処理と文字列探索
第15回:ハードウェアを意識したデータ構造,ソフトウェア作成
定期試験
実務経験を活かした
授業内容
(実務経験内容も含む)
/Course content utilizing practical experience
授業時間外の学習
(予習・復習等)(1,000文字以内)
/Preparation and review outside class(up to 1,000 letters)
演習形式なので,復習をしっかり行うようにして下さい
成績評価方法
および評価基準
(最低達成基準を含む)
(1,000文字以内)
/Evaluation and grading
(up to 1,000 letters)
(a) 授業中の課題(50%),期末試験(50%)で評価する
(b) 評価基準
・アルゴリズムの計算量について理解する
・基本的なデータ構造について理解する
・基本的なアルゴリズムについて理解する
上記で理解した基本的なデータ構造とアルゴリズムについて,C言語などのプログラミング言語で実装でき,それを用いた応用プログラムが書ける
(c) 期末試験を受けるためには全回のレポートを提出していることが必要である.
オフィスアワー:
授業相談(1,000文字以内)
/Office hours(up to 1,000 letters)
水曜日5限(講義終了後).それ以外の時間帯も適宜相談可.
*出張等で不在の場合がありますので事前連絡をして下さい.
学生へのメッセージ(1,000文字以内)
/Message for students(up to 1,000 letters)
演習形式なので,復習をしっかり行うようにして下さい
その他
/Others
3クラスで開講しますが,同じ内容を講義し,演習を行う予定です.
キーワード
/Keywords
プログラミング,アルゴリズムと計算量,データ構造,