三日坊主三冠王あるいは三振

兎にも角にも
配信やめれば、記事もなし。にべもなし。意気地なし。流石にこれはどうしたものかということで、日記をつけ始めた。アウトプットの癖付のため、まずは3日は続けたいところ。更新がなければ、そういうこと。
ことの経緯
ずばり、助走の第一歩である。曲がりなりにも理工系の学徒として混沌とした社会という野に放逐されるわけであり、現状力不足であるのは明白。ブログのサイトそのものの拡充は勿論、AtCoder Algorithm Contest ABCや情報処理技術者試験、Godot、音mad等々食指が伸びるものはあれど、精神的にも肉体的にも体力が足りない。ならば、準備体操から始めるのが筋である。
全くもって「ずばり」ではない冗長な文だがブログのコンセプト通りなので良しとする。
きょうの一枚
何食わぬ顔でサムネイルに居座るは、Cygamesがおくる基本プレイ無料アニメRPG『プリンセスコネクト!Re:Dive』よりリーザ氏。装飾、装束、褐色。このデザイン、あまりにも良い。 現在、プリコネRのメインストーリーは3部に突入し、物語も佳境を迎えております。かつての騎士君の皆様もこれを機に復帰してみては。
きょうのアルゴリズム
初回は基本のk、「挿入ソート」から。先ずは隗より始めよ、です。
#挿入ソート
#データ列をソート済みと非ソート済みに分けて、ソート済みの適切な位置に挿入を行う。
#平均計算量、最悪計算量ともにO(n^2)
#ある程度整列されたデータに対しては、交換数が少なくなるため計算量が少なくなる。
#ソート前後で同じ値を持つデータの順序が入れ替わらない安定したソート
def insertion_sort(list001):
#リストの1番目から順に操作
for i in range(1,len(list001)):
#現在のリストの要素をターゲットとする
target = list001[i]
j = i
#リストの0番目に到達するか、ターゲットが左の要素よりも小さい限り
while j > 0 and target < list001[j-1]:
#右側にずらす
list001[j] = list001[j-1]
j -=1
list001[j] = target
test_list = [5, 2, 8, 1, 9, 3]
print(f"ソート前: {test_list}")
insertion_sort(test_list)
print(f"ソート後: {test_list}")