タグ

2010年10月28日のブックマーク (16件)

  • サービス終了のお知らせ

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

    mooz
    mooz 2010/10/28
    クラス内, 関数内にも書ける.
  • 開発メモ: オンメモリB+木による省メモリ連想配列

    Kyoto Cabinet 1.2.2から加わったGrassDBは、オンメモリでページ管理を行うB+木を実装してメモリを節約しちゃう仕組みである。それを使ってJavaPythonRubyPerlなどのハッシュ(連想配列)機構を鬼のように省メモリにしてみる。頑張ればなんと20分の1になる。 前提 B木やその変種のB+木などは、キーの順序が近いレコード群を「ページ」という単位にまとめてシリアライズしてストレージに書き込むことで、入出力の頻度を減らして高速化することを意図している。メモリに比べて低速なストレージの上で大量のデータを管理するために使われる。多くのRDBMSやいくつかのDBMがB+木をサポートしているのはそれが理由であろう。一方で、メモリ上で検索可能なデータ構造を表現するためには、二分探索木やその特殊例である赤黒木が使われる。STLのstd::mapの実装にも赤黒木を使うのが一

    mooz
    mooz 2010/10/28
    "オンメモリなら赤黒木を使えばよいので、オンメモリのB+木なんて普通は使わない", "空間効率の点ではB+木の方が赤黒木よりも優れている"
  • ブロックアルゴリズムとB-Treeアルゴリズム

    ファイルサーチを高速化するB-Treeアルゴリズム ext2、ext3がベースとするブロックアルゴリズムは、ブロック数が対応するディスクのジオメトリ数に制限されること、ファイルサーチにO(n)かかる(注)こと、ファイルサイズに関係するパフォーマンス低下など、いくつかの問題があった。 注:「O(n)」とは、実行時間が入力の大きさ「n」に比例するアルゴリズムである。O(n)は「nのオーダー」または「オーダーn」と読む。後述する「O(log n)」は、アルゴリズムの計算量に関する議論の場合logの底は常に2で、O(log n)の方がO(n)よりも効率が良い。例えばn=8の場合、O(log n)は入力8に対して3回の実行で済むが、O(n)は8回の実行となる。 ReiserFS、JFS、XFSといったファイルシステムでは、こうしたブロックアルゴリズムの限界に対して、早い段階からデータベースの技術をフ

    ブロックアルゴリズムとB-Treeアルゴリズム
  • 木の回転 - Wikipedia

    この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。 出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方) 出典検索?: "木の回転" – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL (2015年10月) 木の回転(きのかいてん、英: tree rotation)は、2分探索木の操作の一種で、要素の順序を崩さずに構造を変更するものである。木の回転は木の中の1つのノードを上にし、別のノードを下にする。木の形状を変化させるのに使い、特に大きい部分木を持ち上げて小さい部分木を下げることで全体の木の高さを低くするのに使う。それによって各種操作の性能を向上させる。 なお、回転の方向によって「右回転」、「左回転」と言うが、どちらが右でどちらが左なのかは必ずしも決まっていな

    木の回転 - Wikipedia
  • sshfs has moved

    This page has moved to http://github.com/libfuse/sshfs.

  • screenの設定 - wasabi0522's blog

    MacBook内のApacheでTracを動かそうとしてはまっている山葵です。 Tracのこともおいおい書きたいのですが、今回はScreenについてです。 Screenとは UNIXやLINUXでは単一のコンソールだけでは、足りないことがあります。 コンソール上でパッケージ管理システムでインストール作業などを行っている場合に 他の作業などを行いたい場合にはAlt+→などで他のコンソール画面を呼び出すこともできますが。 X上でのktermなどではそれができません。 screenはこのような場合に、単一のコンソール上で仮想画面を複数操作するためのソフトウェアです。 インストール方法 すでに、さくらインターネットへのインストール方法は書きました。 BSD、Linuxでのインストール方法は以下のとおり。 あ、うろ覚えなので間違ってるかもです(ぇ FreeBSD,OpenBSD # port ins

    screenの設定 - wasabi0522's blog
    mooz
    mooz 2010/10/28
  • TinkerTool: Description

    TinkerTool is an application that gives you access to additional preference settings Apple has built into macOS. This allows to activate hidden features in the operating system and in some of the applications delivered with the system. The tool makes sure that preference changes can only affect the current user. You don't need administrative privileges to use the tool. With this design, it is no p

    mooz
    mooz 2010/10/28
    UI のフォントサイズをいじれる
  • Increase System Font Size - How?

    Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

    Increase System Font Size - How?
    mooz
    mooz 2010/10/28
    defaults write NSGlobalDomain AppleDisplayScaleFactor 1.5
  • IDEA * IDEA

    ドットインストール代表のライフハックブログ

    IDEA * IDEA
    mooz
    mooz 2010/10/28
  • サービス終了のお知らせ

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

    mooz
    mooz 2010/10/28
  • テンプレートの部分特殊化 - Wikipedia

    テンプレートの部分特殊化 (Partial template specialization)は、C++の用語で、テンプレートにおいて、特定のテンプレート実引数が与えられたときに、元と異なる定義を使用させるようにする仕組みである。 テンプレートと明示的特殊化[編集] テンプレートはメタクラスである。つまりコンパイラに対してどのようなクラスを作るかを指示したある種の抽象データ型であると言える。たとえばテンプレートであるvector(動的配列)をプログラマが使うときには、vector<int>、vector<string>などのようにデータ型を指定して実体化する。実体化されたvectorは、コンパイラの生成したオブジェクトコードの中ではそれぞれ別のコードが生成され、それぞれ別のクラスとして扱われる。 もしテンプレートクラスは特定のデータ型を指定して使われることが多いと知っており、そのデータ型の場

    mooz
    mooz 2010/10/28
  • 「Scalaがもたらす言語の進化」というタイトルで発表してきた - Faith and Brave - C++で遊ぼう

    Scala勉強会第9回 in 渋谷で発表してきました。 まだScalaでがりがりコード書けないので、外の言語からみたScalaの話をしました。 Scala lang evolutionView more presentations from faithandbrave.

    「Scalaがもたらす言語の進化」というタイトルで発表してきた - Faith and Brave - C++で遊ぼう
  • Hash join - Wikipedia

    The hash join is an example of a join algorithm and is used in the implementation of a relational database management system. All variants of hash join algorithms involve building hash tables from the tuples of one or both of the joined relations, and subsequently probing those tables so that only tuples with the same hash code need to be compared for equality in equijoins. Hash joins are typicall

  • ssh クライアントの設定を変更 ~/.ssh/config に ServerAliveInterval 60 を追加 - @kyanny's blog

    keep-alive for ssh 自宅から ssh でどこかへ繋ぐと数分で接続が切れる問題(有名なアレ)をどうにかしたいなと、昨日深夜に仕事しながら思っていたのをさっき思い出して、 AirMac Express で何か設定すればいいんだっけ?(ルータの問題なんだっけ?)とうろ覚えながらぐぐってみたら、いまいちだったので方針を変えて、 Debian の ssh クライアントには特別なパッチが当たっていて Debian オリジナルの設定項目があり、それを使うと ssh クライアントのほうでよしなにしてくれて接続切れを防いでくれるんだよな、ってことだけ覚えてたので debian ssh keep alive とかでぐぐったら hnw さんの古い(geocities) ページが見つかって、微妙に違うけどあと一歩で幸せになれそうな気がしたので mac ssh keep alive でさらに検索し

    ssh クライアントの設定を変更 ~/.ssh/config に ServerAliveInterval 60 を追加 - @kyanny's blog
  • "design"と笑い男 - Keep Crazy;shi3zの日記

    mooz
    mooz 2010/10/28
  • Modernizr: the feature detection library for HTML5/CSS3

    MENURespond to your user’s browser features.Modernizr tells you what HTML, CSS and JavaScript features the user’s browser has to offer.Add your detects Development build What is Modernizr?It’s a collection of superfast tests – or “detects” as we like to call them – which run as your web page loads, then you can use the results to tailor the experience to the user. Why do I need it?All web develope

    mooz
    mooz 2010/10/28
    対応状況を調べるライブラリ