【東工大 情報工学系 院試】 プログラミング&データ構造とアルゴリズムの勉強法
こんにちは、Ryopperです。私は2024年度に外部で大学院を受験しました。
受験した大学院は以下の二つです。
1. 東京大学 学際情報学府 先端表現情報学コース
2. 東京工業大学 情報理工学院 情報工学系
外部大学院受験をして感じたことは、院試は情報戦ということです。
外部生は情報が全く出回りません。私も非常に苦労しました。
来年度以降、大学院を受験する方に向けての記事を書きたいと思います。
本記事は【東工大 情報工学系 院試】 プログラミング&データ構造とアルゴリズムの勉強法です
大問3(プログラミング,データ構造とアルゴリズム)
プログラミング, データ構造とアルゴリズム は大問3で出題されます。
配点は300点です。
基本的には、ソートアルゴリズムがC言語で出題されることが多いです。
それでは、それぞれの科目について見ていきましょう。
プログラミング
基本的にC言語が出題されます。
数年前は、関数型プログラミング言語であるSchemeが出題されていました。(Schemeは結構難しかった&近年出題されていないので、やらなくて良いと思います。)
勉強法
どのプログラミング言語も触ったことがない、って方はいますぐに勉強を初めてください。forループやif文などの基礎がわかっていないと解けません。基礎を習得するだけで、2~3週間くらいかかるかもしれません。
Pythonしか知らない、って方はC言語の記法を確認したのちに、ポインタや構造体などPythonにはない概念を勉強してください。
(私は、ほぼPythonしか触ったことがありませんでした。)
ある程度C言語を理解している方であれば、特に勉強しなくても大丈夫かもしれません。結局データ構造とアルゴリズムでC言語を使うので。
だいたい初心者がつまづくところは再帰関数だと思います。
再帰関数はマストで理解して、使えるようになって欲しいです!!!
アルゴリズムでも再帰関数が結構使われます!!!
参考書
正直、私は参考書を使ってなかったので、紹介できないです。
C言語ではありませんが、C++であればAtCoderで勉強できると思います。
(CとC++は結構違いますが、院試程度の内容だとそこまで違いがないように感じるかもしれません。)
データ構造とアルゴリズム
基本的にはソートアルゴリズムが出題されることが多いです。
特にヒープソート,クイックソート,マージソートなどのソートアルゴリズムや、線形リスト、二分探索木が頻出です。計算量オーダーの概念も大切です。
勉強法
やはりこの分野も過去問がかなり重要です。特に、アルゴリズムは決まった問題しかないので、全く同じ問題が出るってことも結構あります。
過去問で出てきたアルゴリズムに関しては、フルスクラッチでコードを書けるようになっていると、結構心強いと思います。
とは言っても、最初はどのように処理が進んでいるか理解しにくいと思います。その時は過去問で出題されたコードを実際にエディタに書いて実行してみることをお勧めします。途中でプリントしてみたり、関数の場合は引数を変えてみたり、、などしてみると特に理解が進みます。
参考書
いくつかのWebサイトで紹介されている&研究室訪問に行った時に修士課程の学生にお勧めしてもらった参考書です。
どうしても紙媒体で勉強したいんだ!って方にはお勧めします。
正直アルゴリズムに関してはググれば大量に情報が出てきます。
今回はここまで。
大問1で出題される数学
大問2で出題される数理論理学・オートマトンと形式言語
についてもについても解説しているのでご覧ください。
※記事にある商品リンクはAmazonアソシエイト・プログラムを利用しています。