タグ

algorithmに関するsnaka72のブックマーク (41)

  • リアルタイムバトルでgloopsのデータマイニングがどう進化したのか…伊藤学氏が語る | gamebiz

    gloops『大戦乱!!三国志バトル』、グラニ『神獄のヴァルハラゲート』、クルーズ『アヴァロンの騎士』、ポケラボ『運命のクランバトル』、アソビズム『ドラゴンリーグX』、バンク・オブ・イノベーション『征戦!エクスカリバー』…MobageやGREE、App Store、Google Playでは、これらリアルタイム・ギルドバトルゲームが有力なゲームジャンルの一つとなっている。 リアルタイム・ギルドバトルゲームとは、仲間とギルド(チーム)を組んで、定期的に開催されるチーム同士のリアルタイムバトルに参加し、勝利を目指すゲームだ。仲間との連携や、作戦が勝負の鍵を握るため、従来のゲームに比べて、密度の濃いコミュニケーションが求められる。 このゲームジャンルは、運営力が試されるゲームでもある。サーバーやネットワークの負荷はもちろん、止めてしまったギルドやユーザーを排除しつつ、力の近接したギルド同士をマッ

    リアルタイムバトルでgloopsのデータマイニングがどう進化したのか…伊藤学氏が語る | gamebiz
  • ブルームフィルタ - Wikipedia

    この項目では、確率的データ構造について説明しています。画像にぼかし効果を付加する画像フィルタについては「川瀬のブルームフィルター」をご覧ください。 ブルームフィルタ(英語: Bloom filter)は、1970年に Burton H. Bloom が考案した空間効率の良い確率的データ構造であり、あるデータが集合の要素である(集合に含まれている)かどうかの判定に使われる。ただし判定は正確ではなくて、含まれていないのに含まれていると誤って判定すること偽陽性(false positive)の可能性がある。しかし含まれているものを含まれていないと誤判定すること偽陰性(false negative)はない。なお集合に要素を追加することはできるが、集合から要素を削除することはできない(ただし、拡張をした counting filter であれば削除もできる)。集合に要素を追加していくにつれて偽陽性の

    ブルームフィルタ - Wikipedia
  • Bloom filterの説明 — ありえるえりあ

    Bloom filterの説明 以前、bloom filterに言及したことがあるのですが、実は、言及しただけで何も調べていませんでした。 来週、ある人の話を聞く時、知らないとついていけない可能性があるので、調べてみました。 - 参考サイト 感想ですが、予想以上にシンプルでした。 動作イメージ(だけ)は誰でもイメージできます(実装も簡単)。 上の参考サイトも、英語に気後れせず、図だけでも見てください。動作は想像できるはずです。そして、たぶん、その想像は当たっています。 参考サイトを読めば分かることを日語で改めて説明するのも気がひけますが、どうしても英語を読みたくない人のために、簡単に説明してみます。 動作イメージ あ る入力文書が与えられたとして、後で、その文書に、ある単語fooが存在するかを高速にチェックしたい、という問題を想定するのが理解しやすいと思いま す。入力文書に対する前処理を

  • ベジエ曲線の仕組み (1) - 昔話 - てっく煮ブログ

    asドローソフトなどでもお世話になることが多いベジエ曲線について解説していくシリーズ。小学生のころ、BASIC でのサンプルを入力して遊んでいたのですが、あまりのきれいさに衝撃を受けたプログラムがありました。それはこんな絵を出力するプログラムでした。左上と左下の点をそれぞれの x 座標、y 座標を少しずつ増やしながら、直線を引いています。いくつもの四角形が端に行くにしたがって変形していくところが、いかにも近未来風の CG に見えました(当時は)。しかも、この絵は直線だけで構成されているのに、カーブして見えるところが不思議でなりませんでした。さて、15年のときを経て、このプログラムを ActionScript で実装してみました。点をドラッグして曲線の変化を楽しんでみてください。前置きが長くなりましたが、実はこのカーブして見える曲線の部分は2次ベジエ曲線になっています。3つの黒い点がベジエ

  • アルゴリズムの勉強のしかた - きしだのHatena

    この記事で、アルゴリズムの勉強はアルゴリズムカタログを覚えることじゃないよということを書きました。 プログラムの理論とはなにか アルゴリズムの勉強というのは、スポーツで言えば腕立て伏せや走り込みみたいな基礎体力を養うようなもので、「ソートなんか実際に自分で書くことないだろう」とかいうのは「サッカーは腕つかわないのに腕立ていらないだろう」とか「野球で1kmも走ることなんかないのに長距離の走り込みいらないだろう」とか言うようなものです。 Twitterでアルゴリズムの勉強とはなにかと尋ねられて、「アルゴリズムの基的なパターンを知って、それらの性質の分析のしかたをしって、いろいろなアルゴリズムでどのように応用されているか知って、自分が組むアルゴリズムの性質を判断できるようになることだと思います。 」と答えたのですが、じゃあ実際どういうで勉強すればいいか、ぼくの知ってるからまとめてみました。

    アルゴリズムの勉強のしかた - きしだのHatena
  • 常識を覆すソートアルゴリズム!その名も"sleep sort"! - Islands in the byte stream (legacy)

    TwitterのTLで知ったのだが、少し前に海外掲示板で"sleep sort"というソートアルゴリズムが発明され、公開されたようだ。このアルゴリズムが面白かったので紹介してみる。 Genius sorting algorithm: Sleep sort 1 Name: Anonymous : 2011-01-20 12:22 諸君!オレは天才かもしれない。このソートアルゴリズムをみてくれ。こいつをどう思う? #!/bin/bash function f() { sleep "$1" echo "$1" } while [ -n "$1" ] do f "$1" & shift done wait example usage: ./sleepsort.bash 5 3 6 3 6 3 1 4 7 2 Name: Anonymous : 2011-01-20 12:27 >>1 なん…だと

    常識を覆すソートアルゴリズム!その名も"sleep sort"! - Islands in the byte stream (legacy)
  • Base64 - Wikipedia

    この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方) 出典検索?: "Base64" – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL(2023年12月) Base64は、データを64種類の印字可能な英数字のみを用いて、それ以外の文字を扱うことの出来ない通信環境にてマルチバイト文字やバイナリデータを扱うためのエンコード方式である。MIMEによって規定されていて、7ビットのデータしか扱うことの出来ない電子メールにて広く利用されている。具体的には、A、…、Z、a、…、z、0、…、9 の62種類の文字[注釈 1]と、2種類の記号 (+、/)、さらにパディング(余った部分を詰める)のための記号として = が用いられる。

  • Merge sort

    Implementations[edit] Pseudocode[edit] function mergesort(m) var list left, right if length(m) ≤ 1 return m else middle = length(m) / 2 for each x in m up to middle add x to left for each x in m after middle add x to right left = mergesort(left) right = mergesort(right) result = merge(left, right) return result There are several variants for the merge() function, the simplest variant could look li

  • ハッシュ関数 - Wikipedia

    この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方) 出典検索?: "ハッシュ関数" – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL(2018年6月) ハッシュ関数で名前と0から15までの整数をマッピングしている。"John Smith" と "Sandra Dee" のハッシュ値が衝突している。 ハッシュ関数 (ハッシュかんすう、英語: hash function) あるいは要約関数[1]とは、任意のデータから、別の(多くの場合は短い固定長の)値を得るための操作、または、その様な値を得るための関数のこと。ハッシュ関数から得られた値のことを要約値やハッシュ値または単にハッシュという。 ハッシュ関数は、主に検索

    ハッシュ関数 - Wikipedia
  • anything from herejquery.js のアニメーションコードの解読 ( 10 ) 番外編 easing関数解読

    easing 関数<解読> 解読とは大袈裟すぎるかもしれませんが、一見複雑に見える easing 関数式ですが、実は中学生程度の関数の知識があれば十分理解できるものであることを、恥ずかしながら最近納得したばかりなのです。 そこで、easing 関数が実は簡単な代数式であることを改めて整理しておこうと思います。それも中学校で倣う関数の形式に、表現し直してみます。 対象とする easing 関数は jquery.js で定義されている linear 及び swing の他、George Smith 氏による 30 種類の easing 関数です。 以下の表における大前提 数値の正規化大前提として、jquery.js における正規化を踏まえるので、easing 代数式の文字の意味は次のようになります。 t: current time :これは経過時間ですが、jquery.js においては、t を

  • 【C++/CLI】傾いた楕円の描画(楕円上の点の座標を求める方法) 画像処理ソリューション

    private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) { //傾いた楕円の描画 int i; float Px0, Py0, Px1, Py1; float a, b; float X0, Y0; float w, th, thRad; //長軸 a = 100; //短軸 b = 50; //中心座標 X0 = 300.0F; Y0 = 200.0F; //楕円の傾き th = 30.0F; /////////////////////////////////// //  Graphicsの確保 // //PictureBoxと同じ大きさのBitmapクラスを作成する。 Bitmap^ bmpPicBox = gcnew Bitmap(pictureBox1->Width, p

  • NS Basic/Palm 円を描こう 18

    何だそりゃ、と気の抜けるタイトルですが、真面目に考えてみることにしましょう。 実は、NS Basicには、円を描くコマンドが用意されていません。DrawRectangleコマンドの引数で、角を丸くすることができますが、円を描くためのものではなさそうです。 円を描いたビットマップを用意するのも1つの方法です。円そのものを描く時はそれでも良いでしょうが、任意の円弧を描きたい場合には困ります。 そこで、今回は三角関数のSINとCOSを使って円を描く方法を紹介します。 半径が1の円を単位円と言いますが、この円の円周上にある点Pは、(cosθ, sinθ)で表すことができます。 これは、高校程度の数学で出てくるのでしょうか?要するに図にすると、こんなイメージです。 ちなみに、この単位円の円周の長さは、2πr、rは半径で、単位円ですからr=1ですね。つまり、円周は2πになります。 これがラジアンという

  • ベイジアンフィルターによる�ユーザー投稿フィルタリングエンジンIshigroid

    アクセルメール小冊子2010「安定・確実な携帯メール配信マニュアル ~『届かない』『遅延する』『文字化けする』の回避~」(抜粋版)KLab株式会社

    ベイジアンフィルターによる�ユーザー投稿フィルタリングエンジンIshigroid
  • この機会にマスターしようぜ、正規表現、構文図、オートマトン - 檜山正幸のキマイラ飼育記 (はてなBlog)

    正規表現と構文図について解説します。オートマトンについても詳しく述べます。オートマトン・スゴロクで遊びましょう! 世間でよく知られている/使われている概念・方法にはこだわらず、僕(檜山)の感覚で一番わかりやすいと思われる筋書きと用語法/図式法を使って説明します。この記事に目を通して“感じ”が掴めたら、形式言語理論の教科書を読み始めることが出来るでしょう。 [追記]この記事の内容に対する具体例は、「正規表現とオートマトン:なんだ簡単じゃん、JavaScriptによる実装」にあります。[/追記] 内容: 正規表現 正規表現の例 構文図 基記号 連接 選択 省略可能 繰り返し ストレートワイヤーによるレイアウト調整 有限状態オートマトン 有限状態オートマトンの実行 バックトラックと先読み スゴロクとオートマトン コマをたくさん使うスゴロクと並列処理 非決定性オートマトンと決定性オートマトン 正

    この機会にマスターしようぜ、正規表現、構文図、オートマトン - 檜山正幸のキマイラ飼育記 (はてなBlog)
  • http://ruffnex.oc.to/kenji/xrea/md5.txt

    [ MD5 メッセージダイジェストアルゴリズム ] 動作確認は Linux + gcc で行っています。MD5に関する詳細は RFC1321(MD5 message digest Algorythm) を参照してください。基的には RFC にあるプ ログラムを元に解読していきますが、RFC にあるプログラムをそのまま使用す ると2003年現在のコンパイラでは怒られる可能性がありますので(笑)プログ ラムには多少の変更が加えられています。 MD5概要を説明しますが、詳細は RFC を見て下さい。 例えば1544bitsの長さの文字列(平文)を入力する。 +-----------+-----------+-----------+-----------+ | 512bits | 512bits | 512bits | 512bits | +-----------+-----------+---

    snaka72
    snaka72 2010/09/22
    MD5アルゴリズムの解説
  • セクシーな数学 - 書評 - 不思議な数列フィボナッチの秘密 : 404 Blog Not Found

    2010年08月05日22:00 カテゴリ書評/画評/品評Math セクシーな数学 - 書評 - 不思議な数列フィボナッチの秘密 日経BP橋爪様より献御礼。 不思議な数列フィボナッチの秘密 Alfred S. Posamentie / Ingmar Lehmann / 松浦俊輔訳 [原著:The Fabulous FIBONACCI Numbers] まさに夏休みの読み物にうってつけ。数学の入口として、これほど適した話題もないのではないか。円周率を5兆けたでは夏休みが終わってしまうが、書なら一夏分の課題にちょうどよさそうだ。 書「不思議な数列フィボナッチの秘密」は、「不思議な数πの伝記」の著者たちによる一冊まるごとフィボナッチ数の。類書としては「黄金比の謎」があるが、同書がより一般的な数学書であるのに対し、書はフィボナッチ数一筋である。 目次 - 日経BP書店|商品詳細 - 不思

    セクシーな数学 - 書評 - 不思議な数列フィボナッチの秘密 : 404 Blog Not Found
  • The MD5 Message-Digest Algorithm

    R. Rivest MIT Laboratory for Computer Science and RSA Data Security, Inc. 1992年 4月 English MD5 メッセージダイジェストアルゴリズム (The MD5 Message-Digest Algorithm) このメモの位置付け このメモは、インターネットコミュニティに情報を提供するものである。インターネット標準を規定するものではない。このメモの配布に制限はない。 謝辞 多くの有用なコメントと提案を頂いた Don Coppersmith氏、Burt Kaliski氏、Ralph Merkle氏、David Chaum氏および Noam Nisan氏に感謝する。 目次 1. 要約 2. 用語と記法 3. MD5 アルゴリズム 4. まとめ 5. MD4 と MD 5 の違い 参考文献 補遺 A - 参考実装

    snaka72
    snaka72 2010/09/09
    MD5メッセージダイジェストアルゴリズムについての日本語のページ
  • 無限にAmen Breakを再生するウェブサービス - hitode909の日記

    無限にAmen Breakを切り刻んで再生し続けるウェブサービスを作った.Firefoxで動く. WindowsのFirefoxだとちょっと音が途切れたりするらしい.Macだとちゃんと動く. 追記 Google Chromeで見ると意図せず音割れしてめちゃくちゃかっこいい音が出る.原因は不明. Amen Amen BreakのwavファイルをXHRで取ってきて,JSでバイナリを解析して,ビートごとに分割して,それをランダムに並べることで,新しいパターンを作ってる. 音はaudioタグで,波形はcanvasで出してる. ビートごとに分割してるので,ランダムに並べても,ちゃんとそれっぽく聞こえる. 参考 Amen break - Wikipedia, the free encyclopedia Amen Breakについて. GlitchMonkey for Greasemonkey char

    無限にAmen Breakを再生するウェブサービス - hitode909の日記
    snaka72
    snaka72 2010/08/18
    wavファイルを解析してビート検出、ビート毎に切り刻んでタグで再生。
  • Sorting Algorithms Demo

    We all know that Quicksort is one of the fastest algorithms for sorting. It's not often, however, that we get a chance to see exactly how fast Quicksort really is. The following applets chart the progress of several common sorting algorithms while sorting an array of data using in-place algorithms. This means that the algorithms do not allocate additional storage to hold temporary results: they so

    snaka72
    snaka72 2010/08/13
    各ソートアルゴリズムの違いをアニメーションとソースコードで見せてくれる。
  • アルゴリズムと計算量

    金庫破りと計算量膨張 n 桁の番号をもつ暗証ロックがあるとします。 2 桁であれば 00 〜 99 の 100 個の正解があるわけで、 0 番から順に入力していく解き方では、 最悪の場合は 100 手目に開きます。 99 が正解とは限らないので、平均的にはこれより早く解き終わります。 0 であるときの確率は 1/100 で、このときの手数は 1 手です。 1 であるときの確率は 1/100 で、このときの手数は 2 手です。 2 であるときの確率は 1/100 で、このときの手数は 3 手です。 3 であるときの確率は 1/100 で、このときの手数は 4 手です。 : 99 であるときの確率は 1/100 で、このときの手数は 100 手です。 つまり、平均手数は により、100 手目の約半分です。 ここでいう解き方をアルゴリズムといい、 問題を解くための手数 (てかず) のことを計