ソートアルゴリズムを実装する (1) 前準備

初めに

何年も前に、本気でアルゴリズムを学習しようと思い立ちアルゴリズムイントロダクションを購入した。
さて、本書を読み始めたは良いが数式を追い切れずに気づけば流し読みになってしまい、実際のアルゴリズムさえ把握できないまま積読本となってしまっている。

というわけで少しずつでも本書を読んで行きたいと思う。
しかし数式を完璧に追いきれるか? と言うとそんなことはない。
そこで、最低限のエッセンスくらいは頭に叩き込んでおくことを目標とし、本書中で紹介されているアルゴリズムをひとつずつ実装して行く。
この際にはできる限り (もちろん自分の理解の範囲となるが) 説明も加える。
ただし、本書中の数学的な話 (アルゴリズムの正当性評価などなど) は読み物程度と捉え、実装に重きを置く。
実装は楽なため Python を用いて行う。いつか気が向けば C とかでもやるかもしれないが、まずないだろう。

実のところ、数ヶ月ほど本格的なコーディングというものを行っていないのでリハビリも兼ねる。
またブログを通じて、体系的な文章を高頻度に作成していくという作業を一度実施してみたいという、ある種の興味もある。
せめて週1くらいで何かしらの更新ができるようにしたいが、これは希望的観測である……いくら滞ったとしても、月1は最低ラインとしたい。
……積読本は他にもたくさんあるため、少なくともしばらくネタには困らなさそうである。

(余談だが、私が初めて購入したアルゴリズムの本はあろうことか、紙面上にあらゆる数式が散りばめられ難解と定評のあるThe Art of Computer Programmingである。
当時の自分は読破できると思っていたのだろうか? 即刻めでたく積読リスト入りした。)


では本題に入ろう。

続きを読む

山崎エリイちゃん ソロデビュー2周年記念イベント メモ

エリイちゃんのソロデビュー2周年記念イベントに参加してきたので覚えているうちにメモ。
内容は、お渡し会ならぬ、お渡され会 + トーク + ミニライブ。

  • 日時 2018/11/17 16:30 集合・入場、18:00頃開演、19:30頃終演
  • 場所 科学技術館 サイエンスホール

山崎エリイ ソロデビュー2周年記念イベント | 山崎エリイ オフィシャルHP


これまでの振り返り

お渡され回は前にも一度あったが、そのときには来場者は事前に知らず、唐突に贈る花をスタッフから渡され混乱が起きた。
また、目前にエリイちゃんがいるのに気づかずに前を通り過ぎていったという……。

人気楽曲投票

入場時にアンケートがあった。
内容は、エリイちゃんソロ曲の中でオススメしたい楽曲 (全22曲) と、その理由。

僕はLunatic Romanceと記入した。
理由は@jam 2017でエリイちゃんを初めて観て、生でこの曲を聴いて衝撃を受けたから。

当時は十代交響曲のCMで少し知ってる程度で、ともかく美人だと思っていた。
それでこの曲をクールな表情・声で歌っているところを観て即時にファンとなった。
……ということを記入して提出。

楽曲投票の結果は次のとおりだった。

  • 3位 Lunatic Romance
  • 2位 全部きみのせいだ
  • 1位 星の数じゃたりない


公式側はLunatic Romanceのランクインは意外だったようだ。
前のマネージャーがこの曲を好きだったとのことで、タンバリンの演奏もマネージャーの発案だったとのこと。
しかし彼女はリズムよくタンバリンを叩けず、「3本締めもできない (らしい) のにタンバリンなんてできません!」とマネージャーに言っていたとのこと。

ところで、上記の回答を読んでいただけたので感激である。
僕です!!! という具合で手振ってたら手をぶんぶん振り返してくれた。

「全部きみのせいだ」はまあランクインするよなあと思ってた。

「星の数じゃたりない」については、表題曲ではないとはいえこの曲は僕もすごく好きで、1位というのは納得。
彼女もこれを歌うときにはいろーんな思い出を考えながら歌うとのこと。

2周年クイズ

勝ち抜き方式で、残った5人にサイン入りポスターをプレゼント。
……だけど難易度高ェ! 第一問で敢え無く撃沈した。

例えば、何度も行ったリリイベで最初に開催した会場はどこか、だとか、十代交響曲のリリースを「発表した」日がいつか、という問題だったりして、最早運ゲーである。
でも、長く応援しているファンが多かったようで、全10問弱程度を正解するファンもいたから、よく覚えてんなアと思う次第。

ミニライブ

  • 全部きみのせいだ
  • 十代交響曲
  • a little little thing
  • 未完成のキャンバス (初披露)


りるりる初見だったけど、振り付けめちゃカワイイな……。覚えていこう。


贈った花とポスター
f:id:akaoto:20181117170722j:plain

フラスタ
f:id:akaoto:20181117193250j:plain



アルバム発売が一層楽しみになった。


QColorの色見本

Qtで色指定時に便利だと思い作った。
黒色で色名を書いたので、黒のときには文字が読めないのはご愛嬌。
補色で色名を書くと見やすくなるし面白いかもしれない (黒の場合に限らず) 。

f:id:akaoto:20160925025841p:plain

コード

QColor.colorNames()で色名のリストを取得し、適当に並べた。

import numpy as np
from PySide import QtGui
from PySide.QtCore import Qt
import sys


def main():
    app = QtGui.QApplication(sys.argv)
    ct = ColorPalette()
    ct.show()
    app.exec_()


class ColorPalette(QtGui.QWidget):
    def __init__(self):
        super().__init__()
        self.setWindowTitle('Color palette')
        layout = QtGui.QGridLayout()
        self._createPalette(layout)
        self.setLayout(layout)

    def _createPalette(self, layout):
        colorNames = QtGui.QColor.colorNames()
        colorCount = len(colorNames)
        columnCount = int(np.sqrt(colorCount))

        for i, color in enumerate(colorNames):
            colorLabel = QtGui.QLabel(color)
            colorLabel.setFixedSize(100, 50)
            colorLabel.setAlignment(Qt.AlignCenter)
            colorLabel.setStyleSheet("background-color: {}".format(color))

            row = int(i / columnCount)
            col = i % columnCount
            layout.addWidget(colorLabel, row, col)


if __name__ == '__main__':
    main()

はっしーバースデー2016

へごちん22歳の誕生日をお祝いしてきた。
とりあえず憶えてることメモ。来場した人じゃないと読んでもわからないと思う。

入場

YES!! で入場。いきなり飛ばす。

チャレンジコーナー

フリースロー

バスケ経験が嘘ではないということを証明するためのコーナー。
ステージでバスケやるとは思わなかった。
フリースロー成功率3/3からのご褒美自己紹介タイムでレイアップ。

ペペロンチーノ

レシピは見たことがないと爆弾発言。
グッズTシャツのペペロンチーノのレシピとは……?

あれだけオリーブオイルなどなどかけまくったの「味がない」とのこと

クイズコーナー

愛美

へごちんの手首が好き

ころあず

おわだ見えてない? (また名言が生まれた。)

ゆっこ

正直なところ

ゆっこ降臨 (サプライズ)

ゆっこのおかげでへごちん念願の自転車入手!

ライブパート

楽曲人気投票なんてやってたの知らなかった。
3位以上は歌った。

へごちんで一番好きな曲は「明日の風よ」なので歌ってくれてよかった。
そして納得の1位はENERGY☆SMILEなんだよなあ。まさにライブ曲。

楽曲人気投票結果

5位 勇気のツバサ
4位 YES!!
3位 ABSOLUTE YELL
2位 明日の風よ
1位 ENERGY☆SMILE

Thirty Meter Telescopeペーパークラフトを組み立てた

ホニャプラン製。
http://tmt.honyaplan.com/

外観。
f:id:akaoto:20160904120136j:plain

内容物。
f:id:akaoto:20160904121044j:plain

ミラーってペラペラじゃねーか。
f:id:akaoto:20160904121216j:plain


説明書ののっけから部品の番号間違ってたのはご愛嬌か。
部品Aの組み立てで部品番号が間違っている。

ミラーを両面テープを使って貼り付けろ、とあるが所持しておらずわざわざに買うのも面倒で無視した。
しかし部品に引っかかるような作りになっているので両面テープは必要なかった。

完成。ちょっと手間取ってたら2時間くらいかかってしまった。
結構でかい。
f:id:akaoto:20160904151932j:plain

望遠鏡の方位軸と高度角を回転させられるが、気をつけて回転させないと部品がポロッと取れる(作り方が悪いのか?)。
これで4000円ならまあそれなりに良かったかなという感じ。
玄関に飾った。

TeXのセクション中に数式を番号付きで書く

セクション中に$...$、$$...$$、\[...]\で数式は使えても、数式に番号を振りたいときalign環境等を使うとエラーが出ます。
それなりにこういう記法をしたいことが多かったので困っていたのですが、
ようやく数式中にalign環境等を使用する方法をようやく発見したのでメモっておきます。

続きを読む

AndroidにLlamaをインストールしてみた。

Taskerのトライアル版をAndroidにインストールして1週間使ってみて中々便利だったからライセンス版欲しいけど399円。
払う価値は十分あると思ってもこういうところで貧乏性を発揮して類似のアプリで無料提供されているLlamaをインストールしました。

続きを読む