アルゴリズムとデータ構造の勉強する場所
前書き
アルゴリズムとデータ構造を勉強しようと思ったとき、基本的に蟻本なりQiitaの記事探すなりして勉強していくと思うんですけど、それ以外でAtCoderの問題解説動画がかなり役に立つと思うので、 Aというデータ構造はABCxxxの解説動画にあるぞ!!みたいなのをココにまとめて行きたいな。と思っています。 (ついでに僕が勉強するのに使った記事もあれば書いていきたいと思います。
この記事は永遠に作りかけの記事です。ABC総覧みたいなノリで、適宜更新していきます。
この記事書こうと思ったのは2020/03/04なので、まだ中身は少ないですが、勉強しつつ更新していきたいと思います。
学んですぐに紹介すれば良質な記事が揃うと思うので、出来るだけ勉強したらすぐ書くようにしたいと思う。
ってことで、この記事書き始めたのが僕が緑コーダーになってからなので、累積和とか探索とかの超入門みたいな記事はあんまないかも…(僕が理解しているとは言っていない)
構成
- アルゴリズムの名称/データ構造の名称 (僕が学んだ日付)
- 勉強するのに使った動画/記事 思い出。 こんな感じで書いていきます。
スタート
UnionFind/ユニオンファインド
- ABC157の解説動画(1:50:00頃~)
ABC157D - Friend Suggestionsでunionfindを使っています。 この回は、燃えるWriterで有名なこrtnさんという方がWriterでした。僕はこの問題を解けたのでこrtnさん大好きです。
- ABC157の解説動画(1:50:00頃~)
SegmentTree/セグメントツリー (にぼしは学習中)
- プログラミングコンテストでのデータ構造
セグメントツリーの勉強したい!!ってTwitterでつぶやいたときに、フォロワーの仲いい人が教えてくれた記事です。 蟻本の著者で有名な秋葉さんが書いたやつですね。 - クリエイティヴなブログ(ふるやんさんのブログ)
上で述べたフォロワーの方が先のリンクともう一つこちらも紹介してくれました。会話形式でセグ木(セグメントツリー)を学ばせてくれるので面白かったです。そして勉強になりました。良い。
ふるやんさんという方のブログ記事です。
また、ここで出来上がったコードをちょっといじれば Point Add Range Sumこの問題も解けると思います。 SegmentTreeに慣れるのに良さそう。 - セグメント木をそらで書きたいあなたに(tsutaj) tsutajさんという方の記事です。セグ木の入門的な部分(Range Minimum Queryや、Range Sum Query)をある程度やってみた後に、なんかうまく行かへんな。っておもってセグ木の記事を漁ってるときに見つけて読んでみました。 結構思考が整理サれていく気がしました。
- プログラミングコンテストでのデータ構造