タグ

algorithmに関するyukungのブックマーク (11)

  • B TreeとB+ Treeの違い - Carpe Diem

    概要 インデックスに対してMongoDBはB Treeを採用し、MySQLのInnoDBはB+ Treeを採用しています。 どうして採用しているアルゴリズムが違うのだろう?と思って調べてみました。 主な違い B+ TreeはほとんどB Treeと同じですが、以下の点が異なります。 リーフノードとリーフノードを結ぶポインタがある データはリーフノードのみに保持する 具体例 言葉だけだと分かりにくいので、Visualizeするツールを使って具体例を表示します。 [1, 2, 3, 4, 5, 6, 8, 10, 15, 18]という数列に対し、Order: 3で作ってみます。 Orderは1ノードから出る枝の数のことです。 B Tree B-Tree Visualization B+ Tree B+ Tree Visualization 先程のB Treeと違って、データはリーフノードに持つの

    B TreeとB+ Treeの違い - Carpe Diem
  • どうぶつしょうぎ名人 - まめめも

    どうぶつしょうぎ AI を作りました。絶対に勝てません。無力感を味わってください。 ref: http://mame.github.io/dobutsu-shogi-master どうぶつしょうぎとは 3 マス x 4 マスの単純化された将棋です。ライオン(王相当)、ぞう(1 マスしか進めない角行)、キリン(1 マスしか進めない飛車)、ひよこ(歩相当、にわとりに成ったら金相当)の 4 種類の駒を動かして、相手のライオンを取るか、トライ(ライオンを一番奥の行まで運ぶ、ただし直後に取られる場合はだめ)に成功すれば勝ちです。詳しくは Wikipedia の記事を見てください。 どうぶつしょうぎは後手必勝であることが知られています(研究報告)。つまり、後手が正しくプレイする限り、先手は絶対に勝てません。どうぶつしょうぎ名人は常に正しくプレイするので、先手のあなたは絶対に勝てません。 なんで作ったの

    どうぶつしょうぎ名人 - まめめも
  • 差のつく勉強法200のメモ - tanamonの稀に良く書く日記

    Seaser Conference 2009 Whiteのid:nowokayさんのセッションがとても勉強になったので、セッションのメモ(というかスライドの写経)を載せておきます。 差のつく勉強法200 - 35歳定年説を乗り越えるために何をすればいいか 35歳になりました。 35歳は定年です。 35歳定年説とは ついていけなくなる プログラマじゃ稼げないので管理職になる もうひとつ 飽きる 飽きる理由 一通りやった感 プログラム言語もいくつかやった データアクセスの移り変わりも見た ユーザインターフェースも見た 同じようなプログラムばっかり 35歳定年説を乗り越えるには ついていく 価値を上げる プログラムのおもしろさを知る いろいろ作れるようになる ちゃんと勉強するということ。 何を勉強するか? 基礎 情報系の大学でやっていることをちゃんとやる。 プログラムとは何かを知る 何が処理でき

    差のつく勉強法200のメモ - tanamonの稀に良く書く日記
  • アルゴリズムの勉強のしかた - きしだのHatena

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

    アルゴリズムの勉強のしかた - きしだのHatena
  • 情報工学は面白い!

    毎日の仕事に追われていると、ついITの原理原則を忘れがちになるものだ。何事にも言えることだが、基礎を理解してこそ、初めて応用ができるのである。 連載『矢沢久雄の情報工学“再”入門』では、ITの根幹を成す学問体系である「情報工学」を解説している。おそらく学生時代や入社時の研修で習った方も多いとは思うが、この機会に復習していただきたい。必ず新たな発見があるはずだ。

    情報工学は面白い!
  • ジャンル別ゲームの作り方とアルゴリズムまとめ - ネットサービス研究室

    ゲームの作り方とアルゴリズムをジャンル別にまとめてみました。ゲーム制作や、プログラミングの勉強用にご活用ください。言語別ゲームプログラミング制作講座一覧もあわせてお読みください。 リンク切れがおきていたものは、URLを表示しておくので、Internet Archiveなどでキャッシュを表示させてみてください。 RPG ゲームの乱数解析 乱数を利用した敵出現アルゴリズムの解説 各種ゲームプログラム解析 FF、ドラクエ、ロマサガのプログラムの解析。乱数の計算など ダメージ計算あれこれ(http://ysfactory.nobody.jp/ys/prg/calculation_public.html) ダメージの計算式 エンカウントについて考えてみる エンカウント(マップでの敵との遭遇)の処理方法いろいろ RPGの作り方 - ゲームヘル2000 RPGのアルゴリズム ドルアーガの塔 乱数の工夫の

    ジャンル別ゲームの作り方とアルゴリズムまとめ - ネットサービス研究室
  • ループをたくさん回す処理を高速化する初歩の初歩。 - このブログは証明できない。

    テキスト処理を中心にやっていましたが、画像処理に興味が出てきて、さっそくアプリを作りました。もともと下の記事のあたりでユーザーとして画像処理に興味を持って、当然の流れながら、自分でもつくってみようと。 Color Splash + TiltShift Generator + Instagramの写真加工が面白い。 - このブログは証明できない。 で、何かを間違えて、普通の画像処理ではなく、カメラの映像をリアルタイムに加工しはじめました。そうすると、パフォーマンスがかなりシビアなんですね。 iPhoneでカメラの映像をリアルタイム画像処理してみる。 - このブログは証明できない。 全ピクセルを操作しなければなりませんから、ループをたくさん回す必要があります。なんとか高速化できないかと考えてみたところ、あっさり高速化に成功しました。私が気づくぐらいですから、初歩の初歩なんだと思います。 追記:

  • Studying HTTP

    FX取引所の照会とテクニカル、経済指標の見方等を解説していきます。

    Studying HTTP
    yukung
    yukung 2010/03/05
    HTTPに関する技術・仕様がきれいにまとまっている。
  • BitTorrentのファイル配信メカニズム - Emerge Technology

    Linuxのディストリビューションの配布などで配布サーバの回線速度などがボトルネックになり(図1)、円滑にファイルを配布することはコストがかかります。BitTorrent(図2)は配布者の負担を軽減して、素早くファイルを配信することを目的にBram Cohenによって開発されたP2Pソフトウェア(図3)です。 BitTorrentでは、トラッカーとよばれる全てのピアとピアのアップロード/ダウンロード能力、ファイルの取得状況を管理するサーバが存在します。一般的なP2PシステムではP2Pネットワーク内を検索してからファイルの取得という動作を行いますが、BitTorrentでファイルの検索という作業は行ないません。代わりにトラッカーにファイルを持っているピアを問い合わせます。ファイルを持っているピアの検索をクライアント・サーバで行うということで、従来の分類ではハイブリッド型P2Pシステムになりま

    BitTorrentのファイル配信メカニズム - Emerge Technology
  • アルゴリズムの紹介

    ここでは、プログラムなどでよく使用されるアルゴリズムについて紹介したいと思います。 元々は、自分の頭の中を整理することを目的にこのコーナーを開設してみたのですが、最近は継続させることを目的に新しいネタを探すようになってきました。まだまだ面白いテーマがいろいろと残っているので、気力の続く限りは更新していきたいと思います。 今までに紹介したテーマに関しても、新しい内容や変更したい箇所などがたくさんあるため、新規テーマと同時進行で修正作業も行なっています。 アルゴリズムのコーナーで紹介してきたサンプル・プログラムをいくつか公開しています。「ライン・ルーチン」「円弧描画」「ペイント・ルーチン」「グラフィック・パターンの処理」「多角形の塗りつぶし」を一つにまとめた GraphicLibrary と、「確率・統計」より「一般化線形モデル」までを一つにまとめた Statistics を現在は用意していま

  • 新はてなブックマークでも使われているComplement Naive Bayesを解説する | gihyo.jp

    2008年11月25日にソーシャルブックマークサービス「はてなブックマーク」がリニューアルされました(注⁠)⁠。新しいはてなブックマークのページ上部には、「⁠社会」「⁠生活・人生」「⁠コンピュータ・IT」などいくつかのカテゴリが並んでいます。このカテゴリ分類は、人手を介して行うのではなく、ブックマークされたページの文を抽出して内容を解析し自動的に行っています。自動分類を行うアルゴリズムには、Complement Naive Bayesを利用しています。取り上げた記事では、このアルゴリズムの解説を行っています。 Complement Naive Bayesは2003年に発表された比較的新しいアルゴリズムで、「⁠実装が簡単」「⁠学習時間が短い」「⁠性能がそこそこよい」などの特徴があります。 記事ではまず土台となるNaive Bayesの解説を行っています。Naive Bayesの処理は、あら

    新はてなブックマークでも使われているComplement Naive Bayesを解説する | gihyo.jp
  • 1