タグ

ブックマーク / shogo82148.github.io (3)

  • Goのバイナリに静的ファイルを埋め込むツール assets-life を書いた

    語の Go コミュニティだと go-bindata (なんか乗っ取り騒動とか色々あってメンテナンスされてない), go-assets (最近メンテナンス滞りがち) が有名(要出典)なやつです。 これらのライブラリに関してたくさん日語記事が書かれて、今もたくさん検索に引っかかるのですが、残念ながら最近はメンテナンスが滞っています。 最近は statik の名前もよく見るようになりました。 その他は Resource Embedding - Awesome Go からどうぞ。 で、まあ、今回も完全に車輪の再発明なんですが、他の実装には色々と思うところがあり書いてみました。 shogo82148/assets-life USAGE なにはともあれ、まずは go get してきます。 $ go get github.com/shogo82148/assets-life assets-life

    sonota88
    sonota88 2019/08/07
  • 接尾辞配列(Suffix Array) - Shogo Computing Laboratory

    接尾辞配列(Suffix Array)は,全文検索などに用いられるデータ構造です. それ以外にも,単語の出現回数を高速に求められたり, データ圧縮に使えたりなど,様々な応用例が提案されています. 2012年現在,SA-ISと呼ばれる手法がもっとも効率的に Suffix Array を求められるようです. その基礎となる考え方を1つずつ見ていくことにしましょう. Suffix Arrayとは Suffix Array とはどんなものなのでしょう? 定義にそった,もっとも簡単なアルゴリズムを紹介します. バケットソート 基数ソートとバケットソートは,ソートする対象の種類が有限で範囲がはっきりしている場合に 非常に有効なソート手法です. これを使って Suffix Array を求めてみます. 2段階ソート 隣り合った接尾辞の比較は非常に簡単にできます. ことのことを利用してソートを高速化します

    sonota88
    sonota88 2016/02/17
    SA-ISの説明分かりやすい!
  • おねえさんのコンピュータを作ってみた

    まだやってたのか、と言われてしまいそうですが、おねえさんが計算にかけた時間と比べればまだまだです。 『フカシギの数え方』 おねえさんといっしょ! みんなで数えてみよう! この動画で出てくるおねえさんのコンピュータを作ってみた、というお話。 おねえさんのコンピュータからアクセスできます。 検索アルゴリズム HTML+CSSでコンピュータの画面を再現してみました。Javascriptを組むより、そっちの方に時間がかかった気がする。 経路の描画にはCanvasを使ってます。 この問題は自己回避歩行(Self-avoiding walk)と呼ばれるものらしいです。 単にグラフ上を移動するだけなので、小さいなサイズなら単純な深さ優先検索(DFS)で解けます(大きなサイズで何が起こるのか・・・それは動画で)。 実装では、DFSによる検索プログラムをWeb Workerを使って走らせ、スタートとゴールを

    sonota88
    sonota88 2012/10/08
    frontier という名前を持ってくるのが面白い
  • 1