「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチYoshiki Hayama
Perlのhashって相当使ってるけど、中身知らないなー、とふと思い、調べてみたら、こんなページがあった。 http://www.perl.com/lpt/a/679 2002年に書かれたもので、ちょっと古いけれど、読んでいったら、詳しく知りたかったらとりあえずPerl 1.0のhash.cから始めたらいいんじゃないかみたいなことから書いてあって、なるほどと思って読んでみた。短い。 与えられたキーからデータの入っている場所を探すハッシュ関数としては、以下みたいなループ。 for (s=key,i=0,hash = 0; /* while */ *s; s++,i++,hash *= 5) { hash += *s * coeff[i]; } oentry = &(tb->tbl_array[hash & tb->tbl_max]); こんな感じで、キーの文字1文字ずつを使ってcoeffとい
この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方) 出典検索?: "ハッシュ関数" – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL(2018年6月) ハッシュ関数で名前と0から15までの整数をマッピングしている。"John Smith" と "Sandra Dee" のハッシュ値が衝突している。 ハッシュ関数 (ハッシュかんすう、英語: hash function) あるいは要約関数[1]とは、任意のデータから、別の(多くの場合は短い固定長の)値を得るための操作、または、その様な値を得るための関数のこと。ハッシュ関数から得られた値のことを要約値やハッシュ値または単にハッシュという。 ハッシュ関数は、主に検索
昨年から続いているアルゴリズムイントロダクション輪講も、早いもので次は18章です。18章のテーマはB木(B Tree, Bツリー) です。B木はマルチウェイ平衡木(多分木による平衡木)で、データベースやファイルシステムなどでも良く使われる重要なデータ構造です。B木は一つの木の頂点にぶら下がる枝の本数の下限と上限を設けた上、常に平衡木であることを制約としたデータ構造になります。 輪講の予習がてら、B木を Python で実装してみました。ソースコードを最後に掲載します。以下は B木に関する考察です。 B木がなぜ重要なのか B木が重要なのは、B木(の変種であるB+木*1など)が二次記憶装置上で効率良く操作できるように設計されたデータ構造だからです。データベースを利用するウェブアプリケーションなど、二次記憶(ハードディスク)上の大量のデータを扱うソフトウェアを運用した経験がある方なら、いかにディ
□ 多レベル索引の一種 挿入や削除のタイミングで動的な再編成が効率良く可能. レベル数は層レコード数 に対して ですむ. □ B-tree よりも後述の B-tree の方が良く使われるが,原理の 理解は B-tree の方が理解しやすいので,先に説明する. 以下ではキー値に重複がないものと仮定する. 定義 8 (B木 (B-tree)) が正整数であるとする.次の B木 (a B-tree of degree ) の 各ノードは次のような情報を持つページで,以下に述べる条件を満たすものである (図 6.5, p112 参照.): はroot ノード以外では である. root ノードでは である. レコード のキー値を で表すとすると, である. レコードは最大で 個まで持てる. はページへのポインタである. (つまり部分木へのポインタである.) 中に現れる全てのレコード
Building algorithms in ruby is fun and rewarding. This binary tree doesn’t balance itself but it is simple and flexible using ruby blocks for visit and insert. Traversal style can be selected optionally to visit with :inorder, :preorder or :postorder. Here’s your basic binary tree node representation, it holds a value and connects to a left and right node: class Node # binary tree representation a
講義資料を全世界に向けて無償で公開し、最高水準の理工系教育を全世界の共有財産とすべく提供するプラットフォームです
大規模データから one-pass で item(n-gram など)の頻度を数える手法に関するメモ.ここ数年,毎年のように超大規模な n-gram の統計情報を空間/時間効率良く利用するための手法が提案されている.最近だと, Storing the Web in Memory: Space Efficient Language Models with Constant Time Retrieval (EMNLP 2010) とか.この論文では,最小完全ハッシュ関数や power-law を考慮した頻度表現の圧縮など,細かい技術を丁寧に組み上げており,これぐらい工夫が細かくなってくるとlog-frequency Bloom filter (ACL 2007) ぐらいからから始まった n-gram 頻度情報の圧縮の研究もそろそろ収束したかという印象(ちょうど論文を読む直前に,この論文の7節の
Badass JavaScriptA showcase of awesome JavaScript that pushes the boundaries of what's possible on the web, by @devongovett. You have probably seen face detection at work in programs like iPhoto and Picasa, but what if you could do that performantly in JavaScript? Chinese developer Liu Liu has done the honors, and implemented the algorithm using the canvas element. The algorithm is implemented on
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く