メタバース工学部

RESKILLING COURSE PROGRAM

リスキリング講座プログラム

AL2304

終了

【プラチナ会員限定】アルゴリズム(Pythonによるデータ処理実践と競技プログラミング)

本講義では情報科学の重要な基礎となっているアルゴリズムとデータ構造に関して学習します。具体的には以下のことを目的としています。1.アルゴリズムとデータ構造に関する基礎知識を習得する 2.Pythonを用いて代表的なアルゴリズム・データ構造を実装する 3.講義内で学習した内容を元に応用的なコーディング課題に取り組む

担当教員

東京大学 大学院工学系研究科 准教授
矢谷 浩司
https://iis-lab.org/member/koji-yatani/

目標

本講義を通じて、以下のことができるよう講義を設計しています。

  1. 代表的なアルゴリズムの考え方を理解する
  2. その考え方をコードに落とし込む力を養う
  3. 競技プログラミング等、様々なコーディング課題に取り組める知識を積み上げる

キーワード

アルゴリズム、プログラミング、Python、データ処理、処理効率化、データサイエンス、競技プログラミング

講義計画

毎週水曜日13:00 – 14:45 全13回

第1回(4/5)イントロダクション、計算量
第2回(4/19)累積和、整数関連
第3回(4/26)データ構造
第4回(5/10)探索(サーチ)
第5回(5/17)整列(ソート)
第6回(5/24)文字列照合
第7回(5/31)動的計画法1(基本のDP)
第8回(6/7)動的計画法2(いろいろなDP)
第9回(6/14)BFS、DFS
第10回(6/21)グラフアルゴリズム1(最短経路問題)
第11回(6/28)グラフアルゴリズム2(最小全域木、トポロジカルソート)
第12回(7/5)グラフアルゴリズム3(最大流問題)
第13回(7/12)グラフアルゴリズム4(最小費用流問題)

講座の受講形式

本講義はハイブリッド形式で実施します。対面講義をオンライン同時配信いたします(Youtube Live)。
講義時間に参加できない場合は、Youtube Liveで各回の講義終了後も講義を見ることが可能です。お時間のある時に視聴し課題に取り組んでいただきます。
各回の講義終了後、学習管理システム(track※)において学習した内容のプログラミング課題(コードチャレンジ)を配信します。コードチャレンジはインターネット環境があれば、ブラウザ上で時間や場所を問わずに行うことが可能です(ただし、提出期限は設定されています)。

  • ※trackとは、Givery社が提供しているプログラミング学習・試験プラットフォームで、オンライン上でコーディングとそのテスト、課題の提出が可能となっているサービスです
  • https://tracks.run/products/training/

修了基準

コードチャレンジ基本課題の提出(全24課題、34点満点)。
ただし、以下の条件を満たす必要がある。

  • 総得点が17点以上(5割以上)
  • 0点の提出が3回以下
    Extra課題は提出しなくても良いですが、提出された場合は0.5を乗じた上で得点に加算します
    例えば、基本課題で15点、Extra課題で10点を取った場合、15 + 0.5 * 10 = 20として、修了基準を満たすことになります

受講上の留意点

前提条件

  • 基礎的なPythonに関するプログラミング技術を有していること。変数の型、基本的なデータ構造(リスト、辞書)、入出力、ループ、条件分岐、関数、再帰などが理解でき、コードを書くことができる
  • trackでコーディングを行え、Zoom、Googleサービス(google drive、google form、google colab等)、Webブラウザ、Slackを利用できるPCをご用意ください
  • ご受講を申し込まれる前に、受講に利用されるPCでtrackが動作するかどうか、以下のサイトを参照しご確認ください。
    track動作事前確認サイト
    ※タイトルは「受験環境に問題があり受験ができない場合の対応方法」とありますが、上から順にお使いのPCの設定をご確認頂き、問題ないことをお確かめください。
  • 講座期間中、Slackを通じて、受講案内を行います。Slackを利用できる環境をご用意ください
  • 受講にはGoogleアカウントが必要です。あらかじめご用意ください

https://yatani.jp/teaching/doku.php?id=2023algorithms:start

BACK TO LIST