スズメの本棚

自分の知識の定着のために本や実装したことをまとめていきます.

Pythonで実装するアルゴリズムとデータ構造

プログラミングコンテスト攻略のためのアルゴリズムとデータ構造に書かれている内容をまとめながら,アルゴリズムに関してはPythonで実装していきたいと思います.
記事は内容を書き次第,随時更新していきます.

第1章

オンラインジャッジの使い方やサイトの活用方法に関して記載されているのみなので記事としては書きません.
AOJ(Aizu Online Judge)の問題を使用することもあると思うので,真似してみたい人は登録してみてください.
ちなみにAtcoderが初めてやる競技プログラミングとしてはおすすめです!

第2章

主に計算量に関する内容を学びます.
また,初めて競技プログラミングに触れる人向けの問題などを解くことができます.
対応する記事はこちらになります. tech-shelf.hatenablog.com

第3章

基本的なアルゴリズムに関して学びます.
対応する記事はこちらになります. tech-shelf.hatenablog.com

第4章

基本的なデータ構造に関して問題を通しながら学びます.
StackやQueueなどの理解をしたい方はこちらから
tech-shelf.hatenablog.com

少し応用的な問題を解きたい方はこちらから
tech-shelf.hatenablog.com

第5章

基本的な探索アルゴリズムを問題を通しながら学びます.
扱っているのは二分探索と線形探索になります.
tech-shelf.hatenablog.com

問題をどう解くか解説しているのはこちらになります.
tech-shelf.hatenablog.com

第6章

再帰と分割統治法に関して学びます.
再帰を使った全探索の方法に関して扱っています.
tech-shelf.hatenablog.com

再帰的な構造を持つフラクタル図形に関する問題を学んだ知識を用いて解いています.
tech-shelf.hatenablog.com

第7章

高等的ソートアルゴリズムに関して扱っています.
主に6章で学んだ知識を元にソートアルゴリズムの実装をしています.
マージソートに関しての実装は以下から
tech-shelf.hatenablog.com

第8章
第9章
第10章
第11章
第12章
第13章
第14章
第15章
第16章
第17章
第18章
第19章