2018-03-01から1ヶ月間の記事一覧

Numpyのnewaxisの説明で分かりやすいのがあった

stackoverflow.com

レーベンシュタイン距離をいい感じにまとめているサイトがあった

いまさら編集距離 (Levenshtein Distance) を実装するぜ | takuti.me

最小全域木問題について(プリム法)

class MinimumSpanningTree(object): def __init__(self, v): self.v = v self.e = 0 self.mincost = [float("inf") for i in range(v)] self.cost = [[float("inf") for i in range(v)] for i in range(v)] self.used = [0 for i in range(v)] def append(s…

pip install で詰まった時の話

python2.6 の pip install で詰まった時の話。 HTTP Error 403: SSL is required http://pypi.python.org/simple/ で pip install しようとしている場合、 以下で指定すると、うまくいく。 $ pip install xxxx -i https://pypi.python.org/simple/ $ pip ins…

プロセス監視する時の /service 配下の設定とか

daemontoolsをインストールして、ごちょごちょ設定行う。 スティッキービットを立てるとか言うらしい。 $ chmod +t test_job keisyu.hateblo.jp daemontools howto 大きく分けると...らしい。 svscan サービスディレクトリの監視 supervise プロセスの監視お…

sudo -iを使用した場合

sudo -iで移ったユーザの環境変数まで読んでくれるらしい パスワード: [root@localhost ~]# sudo -u vagrant -i /home/vagrant/list.sh /var/tmp nabe-jw.hatenablog.com

単一始点最短距離問題をPythonで解答

負の閉路が存在しない場合、更新はいずれ止まるため、この更新方法で対応できるらしい。 ## ベルマンフォード法 class BellmanFord(object): def __init__(self, v): self.e = 0 self.d = [float("inf") for i in range(v)] self.edge = [] def append(self,…

AWSのタイムゾーン設定

Amazon Linuxのタイムゾーンの設定は、 timedatectlがなかったので以下で対応した。 勝手にMySQLのタイムゾーンも変更 $ sudo yum -y install ntp $ sudo ntpdate ntp.nict.jp $ su # service --status-all | grep ntp # vim /etc/ntp.conf ==(vim /etc/ntp.…

Jupyterを外部サーバに設置してアクセスする方法

以下の設定で可能。 In [1]: from notebook.auth import passwd In [2]: passwd() Enter password: <パスワードを入力> Verify password: <パスワードを再入力> Out[2]: 'sha1:<ハッシュ化されたパスワード>' $ vim ~/.jupyter/jupyter_notebook_config.py ~…

UnionFind木のpythonでの実装

UnionFind木で同じグループのものを判定する class UnionFind(object): def __init__(self, size): self.parent = [i for i in range(size)] self.rank = [0 for _ in range(size)] def find(self, x): if self.parent[x] == x: return x else: return self.…

PriorityQueueの確認

PriorityQueueをPythonで表してみる。 こんなんで大きい順に出せるのかと思った。 class PriorityQueue(object): def __init__(self): self.l = [] def push(self, x): self.l.append(x) sz = len(self.l) i = sz - 1 while i > 0: p = (i - 1) // 2 if self…