タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

ProgrammingとdeferredとALgorithmに関するagwのブックマーク (776)

  • wonderfl build flash online | 面白法人カヤック

    wonderflは、サイト上でFlashをつくることのできるサービス。 通常Flashをつくるためには、Flash IDEやFlex、FlashDevelop等といったツールを使って、コードを書き、コンパイルする必要がありますが、wonderflでは、サイトにあるフォームにActionscript3のコードを書けば、サーバサイドでコンパイルを行えます。 つまり、ブラウザさえあれば、Flashをつくれます。コンパイル結果はサイト上に表示され、作成されたFlash(swf)はページ上に自動的に表示されるので、完成したFlashをリアルタイムに見ながらコードを書くことができます。 ※APIとして、はてな OpenIDを使用してネットにさえつながれば、誰もがFlashクリエイターになれます。世界中のFlashクリエイターがユーザーになるwonderflは、 文字通り、世界のFlash図鑑となってい

    wonderfl build flash online | 面白法人カヤック
  • 西尾泰和のブログ: Javaで破壊的クイックソート

    agw
    agw 2009/05/08
    破壊、非破壊的クイックソート間の考察。
  • Perlのstable quicksort - てきとうなメモ

    stableなquicksortないかなと思っていろいろ探していたらPerlのquicksortがstableな実装だった. perl5.10.0のpp_sort.cより引用. Perlのquicksortについては以下のようなデータ構造を利用している. indir list1 +----+ +----+ | | --------------> | | ------> first element to be sorted +----+ +----+ | | --------------> | | ------> second element to be sorted +----+ +----+ | | --------------> | | ------> third element to be sorted +----+ +----+ ... +----+ +----+ | | ----

    Perlのstable quicksort - てきとうなメモ
  • アルゴリズム再入門

    2012-07-16 14:25:12 WEB+DB PRESS総集編[Vol.1~36] | 技術評論社 WEB+DB Press 総集編[Vol.1〜36]に書いた記事『Webエンジニアのための基礎,徹底理解 3章:アルゴリズム再入門 C#編』を公開します。 ちなみにこの記事ではデータ構造についての話を最小限にしています。出てくるデータ構造は配列と二分木だけ。それは、データ構造については別のライターさんが記事を書くことになっていたからです。 ちなみに、書いてみたかった(というか、書いてみたけどやめた)アルゴリズムは、 ハッシュ法 (これはデータ構造の章にあります。すばらしいです) 木の探索 (traversal) 平衡木 (AVLとか) その他の有名なソート (バブルソート、シェルソート、ヒープソート、etc) Skip List (これはどちらかと言うとデータ構造メインな話なのでため

    アルゴリズム再入門
  • Wavelet Tree - naoyaのはてなダイアリー

    圧縮全文索引の実装などでしばしば利用される Rank/Select 辞書と呼ばれるデータ構造があります。詳しくは参考文献を参照していただくとして、今回は一般の文字列に対して効率的に Rank/Select を可能とするデータ構造である Wavelet Tree (ウェーブレット木) のライブラリを作りました。 http://github.com/naoya/perl-algorithm-wavelettree/tree/master my $wt = Algorithm::WaveletTree->new("abccbbabca"); is $wt->rank(6, 'a'), 2; is $wt->rank(6, 'b'), 3; is $wt->rank(9, 'b'), 4; is $wt->select(0, 'a'), 0; is $wt->select(1, 'a'), 6;

    Wavelet Tree - naoyaのはてなダイアリー
  • algorithm - correction - 最近点検索 : 404 Blog Not Found

    2009年04月29日07:45 カテゴリMathアルゴリズム百選 algorithm - correction - 最近点検索 これ、「素直な解答」の方が間違っている。 404 Blog Not Found:algorithm - 最近点検索 ぬじゃらだーさんのコメント このアルゴリズムって点が原点から等距離に分布している場合はまったく働かないですよね。 その通り。その一方で、「近い順にソート」は合っている。しかしこれだとO(n log n)。 TSさんのコメント もとの最近点探索の問題を解くには、点集合Pのボロノイ図データを作っておいて問い合わせに答えるのが正攻法ではないでしょうか これだと確かに高速。点がすべて格子点上にある場合(たとえばビットマップ)、ボロノイ図があらかじめ用意してある場合はO(1)で判定できる。たとえば各格子点にあらかじめどの点が一番近いかを記録しておき、それを読

    algorithm - correction - 最近点検索 : 404 Blog Not Found
  • Selection algorithm - Wikipedia

    For simulated natural selection in genetic algorithms, see Selection (genetic algorithm). In computer science, a selection algorithm is an algorithm for finding the th smallest value in a collection of ordered values, such as numbers. The value that it finds is called the th order statistic. Selection includes as special cases the problems of finding the minimum, median, and maximum element in the

  • algorithm - 最近点検索 : 404 Blog Not Found

    2009年04月28日23:30 カテゴリMathLightweight Languages algorithm - 最近点検索 後のデザートにちょうどよいサイズの問題。 二次元の値(x, y)をもつ集合P から任意の点p の近似点を検索するアルゴリズムを考えています 高速、低負荷で検索するにはどうしたらいいでしょうか? 条件は次の通りです .. - 人力検索はてな 条件は次の通りです 集合Pはあらかじめ、任意の順番でソートしておける 点pの近似点にする条件は、margin範囲内で一番近いものとするが、margin値はそのときどきで変わる まずは素直に答えを。 点集合は、あらかじめ原点からの距離順にソートしておく。 その集合を、検索したい点の原点からの距離を使って二分探索(binary search)する。 二分探索は exact match でなくてもいいので、この方法でOKです。O(

    algorithm - 最近点検索 : 404 Blog Not Found
  • ベイズを学びたい人におすすめのサイト - download_takeshi’s diary

    ベイジアンフィルタとかベイズ理論とかを勉強するにあたって、最初はなんだかよくわからないと思うので、 そんな人にお勧めのサイトを書き残しておきます。 @IT スパム対策の基技術解説(前編)綱引きに蛇口当てゲーム?!楽しく学ぶベイズフィルターの仕組み http://www.atmarkit.co.jp/fsecurity/special/107bayes/bayes01.html いくつかの絵でわかりやすく解説してあります。 自分がしるかぎり、最もわかりやすく親切に解説してる記事です。数学とかさっぱりわからない人はまずここから読み始めるといいでしょう。 茨城大学情報工学科の教授のページから http://jubilo.cis.ibaraki.ac.jp/~isemba/KAKURITU/221.pdf PDFですが、これもわかりやすくまとまってます。 初心者でも理解しやすいし例題がいくつかあ

    ベイズを学びたい人におすすめのサイト - download_takeshi’s diary
  • Algorithm Introduction #18 B-Tree

    はてなで行われたアルゴリズム・イントロダクション勉強会第18章B-Treeの資料です. - Download as a ZIP, PPTX or view online for free

    Algorithm Introduction #18 B-Tree
  • ヒープ - Wikipedia

    親要素が常に2つの子要素より大きくならない(またはその逆)構造になっている。 挿入、削除がO(log n)で可能。探索は。 ルートが常に最小(または最大)要素となっているので、ルートの削除を繰り返すことで、ソートを行うことができる。 このときの計算量は。(ヒープソート) 木の高さの低い方(または深さの浅い方)から、また同じ高さでも左または右のどちらかに要素を寄せた木構造を作る。深さ の要素がすべて使われるまで、深さ の要素は作成しない。要素の添字を 1 から開始すると、要素 の親は 、子は および となる(添字を 0 から開始すると親は 、子は と である)。 後述する手順に従って操作すれば、データの出現順序に関わらず、このような構造を容易に維持できることがヒープの利点である。 構造の節で述べたように、任意の要素に対する親要素と子要素は添字の計算で特定することができる。また要素が存在するか

    ヒープ - Wikipedia
  • 二分探索木 - Wikipedia

    この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。 出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方) 出典検索?: "二分探索木" – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL (2023年3月) 二分探索木 二分探索木(にぶんたんさくぎ、英: binary search tree)は、コンピュータプログラムにおいて、「左の子孫の値 ≤ 親の値 ≤ 右の子孫の値」という制約を持つ二分木である。探索木のうちで最も基的な木構造である。 構造は二分木と同じだが、「左の子孫の値 ≤ 親 ≤ 右の子孫の値」という制約を持つ。左の子孫の値と右の子孫の値の両方に等号をつけているが、実際にはどちらかに統一しておく必要がある。 平衡(左右のバランスがとれている状態)し

    二分探索木 - Wikipedia
  • 二分木 - Wikipedia

    簡単な二分木。大きさ9、深さ3、根は値2を持つ 二分木(にぶんぎ)は、データ構造の1つである。二進木(にしんぎ)やバイナリツリー(英: binary tree)とも呼ばれ、根付き木構造の中で、全てのノード(節点 node)が持つ子の数が高々2であるものをいう。典型的には2つの子はそれぞれ「左」「右」と呼ばれる。 たとえば、二分探索や二分ヒープを実装するために使われる。 以後、括弧の中は英語表記。 親から子へ有向線分(辺、エッジ edge)が引かれる。子を持たないノードを葉(リーフ leaf)ないし外部ノード (external node) と呼ぶ。葉でないノードを内部ノード (internal node) と呼ぶ。あるノードの「深さ」(depth) はルート(root 「根」にあたるノード)からそのノードまでにたどる経路(パス path)の長さ(経路の種類ではなく、ノード-ノードを1と数え

    二分木 - Wikipedia
  • 木構造 (データ構造) - Wikipedia

    この記事には参考文献や外部リンクの一覧が含まれていますが、脚注による参照が不十分であるため、情報源が依然不明確です。 適切な位置に脚注を追加して、記事の信頼性向上にご協力ください。(2023年1月) 木構造は、一般のグラフ構造と同様の、ノード(節点、頂点)とノード間を結ぶエッジ(枝、辺)あるいはリンクで表すこともできるが、木構造専用の、特に有向の根付き木となるような表現が使われることも多い。 データ構造として使われる木は、ほとんどの場合、根となるノードが決められた根付き木である。さらに、有向木であることも多い。[注 1] ノード間の関係は家系図に見立てた用語で表現される。木構造内の各ノードは、0個以上の子ノード (英: child node) を持ち、子ノードは木構造内では下方に存在する(木構造の成長方向は下とするのが一般的である)。子ノードを持つノードは、子ノードから見れば親ノード (英

    木構造 (データ構造) - Wikipedia
    agw
    agw 2009/04/28
    操作法についての記載がある。
  • Loading...

  • sideways addition

  • おとうさん、ぼくにもYコンビネータがわかりましたよ! - 2009-04-09 - きしだのはてな

    やっと、Yコンビネータが何を意味するものなのか、どういう意義があるのかがわかりました。 名前を使わず再帰ができますよ!というだけのものじゃなかったのですね。 まずλありき 関数の話をしたいのです。 そのとき、いちいち hoge(x) = x * 2 としてhogeを・・・、とか名前をつけて話を進めるのがめんどうなので、関数を値としてあらわすと便利ということで、λという値を定義するのです。 そうすると、上のhoge関数なんかはλ(x)(x*2)などとあらわせますが、引数をあらわすのに()を使うといろいろまぎらわしいので、 λx.x*2 のように表記します。 というのがλ。 このとき、λになにかわたされたら、引数としてあらわされる部分を単純におきかえます。 (λx.x*2)y とあったら、xの部分をyでおきかえて (λx.x*2)y → y * 2 となります。λの引数部分を与えられた引数で置

    おとうさん、ぼくにもYコンビネータがわかりましたよ! - 2009-04-09 - きしだのはてな
  • http://www.ic-net.or.jp/home/takaken/nt/index.html

  • アルゴリズムとデータ構造編 トップページ●Programing Place

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

  • 時事・strlen - Chasoの日記

    (少し古いですが) 続きを読む 日の時事メモです。 続きを読む 以下はCにおけるストリングの表現法から生じたもの。 Cのストリング表現は明示的な長さを持たず、末尾0によりあらわされる。 高速なstrlenの実現にはワード境界に至るまで1byteずつロード・検査し、 その中に0が含まれているかを調べればよい。 ビッグエンディアンであれば左から見て最初の0のバイトの添え字を戻す関数があればよい。 ※ではintが4byteの環境でした。私の環境では2byteなので、longを使用してに合わせてあります。 続きを読む

    時事・strlen - Chasoの日記