2023年3月 日 月 火 水 木 金 土 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 -
最近の投稿
最近のコメント
- Python:ランダムな文字列を作る に Ruby:ランダムな文字列を作る | blog.PanicBlanket.com より
- Python for Windows: poetryの挙動がおかしい に CTO より
- Ubuntu Serverの一般ユーザでdockerを実行できるようにする に Ubuntu Server 22.04 LTSのインストール | blog.PanicBlanket.com より
- モニタなしでUbuntu Serverを起動する に Ubuntu Server 22.04 LTSのインストール | blog.PanicBlanket.com より
- Ubuntu Server 20.04.1 LTSのインストール に Ubuntu Server 22.04 LTSのインストール | blog.PanicBlanket.com より
アーカイブ
カテゴリー
メタ情報
「algorithm」カテゴリーアーカイブ
Pythonで全文検索を実装してみた
JavaScript でやってるのを見かけたので。 cf. JavaScriptで全文検索(N-gram)を実装してみる! – Simple is Beautiful. アルゴリズムは N-gram ってい … 続きを読む
リスト(配列)の中で隣り合う同じ値をグループ化する(3)
しつこいようだけど、今度は Go でやってみた。 package main import ( “fmt” ) func main() { var l1 = []int{1, 1, 2, 2, 3, 1, 1} var l … 続きを読む
リスト(配列)の中で隣り合う同じ値をグループ化する(2)
こないだのやつを Scheme と Haskell でやってみた。 まずは Scheme 版。 (define adjacent-group (lambda (lis) (let loop ((l (cdr lis)) … 続きを読む
リスト(配列)の中で隣り合う同じ値をグループ化する
リストでも配列でもいいけど、つまりこういうのを [1, 1, 2, 2, 3, 1, 1] こうしたい。 [[1, 1], [2, 2], [3], [1, 1]] Ruby でやってみた。 def adjacent_g … 続きを読む
球面上の点を平面上にステレオ投影する
先週のさらに続き。先週は、球面上の点を平面上に投影するのに X, Y 座標をそのまま使って水平投影したけど、今度はステレオ投影というのをやってみる。ステレオ投影は Wikipedia に詳しく載っている。先週と同じように … 続きを読む
多数の点を球面上に一様分布させる(2)
一昨日の続き。最初と最後の点を極から移動(位置調整)するのを実装した。ついでに、gem 化して RubyGems.org にアップしておいた。gem install gss_generator でインストールできる。 使 … 続きを読む
多数の点を球面上に一様分布させる
ちょっと面白いものを見つけた。 cf. LEDドームのLEDの並びを決めるのに使用した計算式 – jakaladaのブログ 球面上に任意個の点を一様分布させる、座標を求めるもの。一般化螺旋集合(general … 続きを読む
文字列間のレーベンシュタイン距離を求める(3)Haskell版ふたたび
去年の12月に2つの文字列のレーベンシュタイン距離を求めるっていうのを、JavaScript と Haskell でやった。もともとは Python での実装を参考に2次元配列を使ってやってみたもので、JavaScrip … 続きを読む
逆関数法で指数分布する乱数を生成する
[0,1)区間の一様乱数から、指数分布にならう乱数を生成するには、逆関数法というのが使える。指数分布の密度関数は、パラメータをτとすると:$$ f(\tau)=\lambda e^{-\lambda\tau} $$であり … 続きを読む
Box-Muller法で正規分布する乱数を生成する
一様分布する乱数から、正規分布に従う乱数を生成する方法に、Box-Muller法というのがある。Wikipediaによれば、(0,1) 区間の一様分布乱数2つ(X,Y)から、下の式で2つの正規分布乱数 $ Z_1 $ と … 続きを読む