草体にぼ日記

だらだらと

螺旋本/AOJ本 partitionとquickSort

こんにちは。
螺旋本を勉強していく上で、コードを理解するためにコードを画像にして書き込みしていって学ぶっていう方法が僕の中で流行っているので、他人に分かりやすいように加工なんてことはしていないんですけど貼っていこうと思います。

もしかしたら螺旋本勉強難民がこのブログを読みに来ることがあるかもしれないので一言。
これ、僕が螺旋本を勉強する際のただのメモっていうか…みたいな感じなものなのであまり期待しないでください。


一応検索がしやすいようにAOJ上での問題の名前をタイトルにしていきます
f:id:niboshi_bisyoujo:20191022024438j:plain
まずはpartitionです。
こちらは"一回だけ"一番右のものを選んでそれより左に小さいの、右に大きいのを置いていくから割と分かる

でも実装できるかって言われたら無理^^


f:id:niboshi_bisyoujo:20191022024505j:plainf:id:niboshi_bisyoujo:20191022024511j:plainf:id:niboshi_bisyoujo:20191022024516j:plain
はい次、quickSort
こちらはpartitionしまくる。
pointは、分割する際に使った番兵の位置は正しくなっているので、次の分割には関与しない。
・今使っていた番兵の要素の位置がq,であるとき、次の分割統治はそれより前とそれよりあとをやればいいので引数は q-1 と q+1 が出てきている。

(螺旋本をそのまま写真で撮ってのっけてるわけじゃなくて自分で書いたコードだからブログの内容は別に問題ないよね?)

もしも将来僕が将来強くなったら、螺旋本の解説の解説みたいなことしてるかもしれません…(ホンマか??)

ぶっちゃけ螺旋本は蟻本より簡単だ~なんて言われていますが、そんなことないよね^^
どういう人に対して簡単だって言ってるんだろう。
アルゴリズムとデータ構造を一度学んだ人??


ってかこれさ、画像でかすぎて気持ち悪くね?
俺的には小さく画像を配置しておいて、押したら拡大して見える。なり、押したら別タブで開く。って感じにしたいんだけど…

でもブログに時間かけるのめんどっちいので不格好だけどとりあえずはほっておきます。