タグ

2009年11月28日のブックマーク (11件)

  • 検索アルゴリズム (2)2分検索/木検索

    検索アルゴリズム (2)2分検索/木検索 検索アルゴリズムの2回目は2分検索と木検索です。 1)2分検索 前回紹介した線形検索は、n個のデータ列に対して平均n/2回の比較操作が必要となるため、処理速度はnに比例していると言えます。これに対して、2分検索(Binary Search)ではn個のデータ列に対して最悪でもlog2n回の比較回数で済むので、線形検索に対してかなりの性能向上が期待できます。 ただし、2分検索を行うためにはデータ列がソートされている必要があり、その分線形検索に比べて前処理のための時間が必要となります。また、1回の比較処理にかかる時間も線形検索より長くなるため、データ数が少ない場合は2分検索の方がかえって遅くなることも考えられます。 2分検索では、まずデータ列の中央にある要素(以下mとします)と検索対象データ(以下xとします)を比較し、一致しなければxとmの大小関係より

  • boostのcondition variable(条件変数) - pyopyopyo - Linuxとかプログラミングの覚え書き -

    Linuxだと pthread_cond_wait() つまり POSIX系、 Windows だと WaitForSingleObject() つまり Win32APIと、スレッドまわりのAPIはOSによって使い分ける必要があります。これは面倒くさい!!そういう場合は boost の boost::thread 一派が便利です。 たとえば、定番の生産者消費者モデルを boost で実装すると、こんな感じ。 #include <iostream> #include <boost/thread/thread.hpp> #include <boost/thread/condition.hpp> using namespace std; static boost::mutex mutex; static boost::condition cond; int num=0; static void

    boostのcondition variable(条件変数) - pyopyopyo - Linuxとかプログラミングの覚え書き -
  • にひりずむ::しんぷる - 結構正確な経過時間の計測

    ある処理が終わるまでの時間を測りたいなーってことがあると思います。 そういう時は以下のようにTime::HiRes::Time()を使う use strict; use warnings; use Time::HiRes qw(time); my $start = time; # 計測したい処理 print $start - time; のではなく、Time::HiRes::getimeofdayとTime::HiRes::tv_intervalを使った方がより正確みたいですね! use strict; use warnings; use Time::HiRes qw(gettimeofday tv_interval); my $start = [gettimeofday]; # 計測したい処理 printf "%.6f", tv_interval $start, [gettimeofda

  • Perlのこれだけは勘弁!というところ - Islands in the byte stream (legacy)

    Perlのこれだけは勘弁!というところを挙げてみる。 scalar context/list contextの区別はいらない void/non-voidだけでよかった メソッド呼び出しと関数呼び出しを区別できない 名前付き引数がないのはDISられてもしかたがない 組み込みのinstanceof演算子相当が存在しない Scalar::Util::blessed($_) && $_->isa(...) は長すぎる こんなところか。あまり思いつかなかった。他にも欠点がないわけではないのだが,利点と紙一重だったりライブラリで補えたりすることがほとんどだ。 たとえば,巷で言われるような「後付けOO機能」は欠点とは思わない。組み込みのOO機能が貧弱だからこそ生まれたものもたくさんあるからだ。

    Perlのこれだけは勘弁!というところ - Islands in the byte stream (legacy)
  • Life is beautiful

    tyru
    tyru 2009/11/28
    デコレータ memoize
  • HTMLを体系的に理解するための7仕様

    はじめに最近マークアップエンジニア志望の若者と話す機会が多いのだけれど、そこで気づかされるのは、彼らの中に過去のHTML(特に90年代以前の仕様)を読んだことのあるという人が、驚くほど少ないことだ。 例えば「マーク・アンドリーセンをどう思う?」と聞くと、「アンドリーセンって誰ですか?」という答えが返ってくる。「ヨスケの独自要素で何が一番好き?」と聞くと、「見たことがありません」と言われてしまう。「ではきみは、昔のHTMLを見たことがあるの?」と聞くと、たいていが「とほほでやっていたものくらいなら……」という答えしか返ってこない。 今の若い人の間では、HTMLを体系的にとらえようという人は少ないようだ。見るのは専ら近年の話題仕様ばかりで、歴史を辿ってみたり、系譜をひもといて標準化団体ごと理解しようとする人はほとんどいない。 これは、ちょっと由々しき問題だと思わされた。HTMLは、もう長いこと

    HTMLを体系的に理解するための7仕様
  • 日本語の正体 - 小池啓仁 ヒロヒト応援ブログ By はてな

    アマゾンでは、あまり評判が良くありませんが、私には、大変面白く読めました。 確かに、ちょっと『?』のところもあり、韓国人目線のところもありますが…。 結論から言うと、今の日語の正体は、百済語(くだらご)ということです。 縄文時代は、今の日語とは別の日語があったそうですが…弥生時代に朝鮮半島から百済人が来て百済語になってしまったそうです。 つまり、弥生人は、縄文人と百済人の混血で、文化的に優れていた百済語が今の日語に変化していったようです。 一方、朝鮮半島では、百済が白村江(はくすきのえ)の戦いで、新羅(しらぎ)と唐(昔の中国)の連合軍によって滅亡してしまい。 朝鮮半島では、新羅語と古い中国語(北京語でない)が今の韓国語に変化していったようです。 そして、百済語と新羅語は、実は、ほぼ同じものとのことでした。 日語は、百済語の読みを漢字に当てはめ、つまり万葉仮名のようにして漢字の訓読

    日本語の正体 - 小池啓仁 ヒロヒト応援ブログ By はてな
  • キーボード派におすすめするLinuxのCompiz設定 - voidy21の日記

    はじめに 正直Compizなんか使わずにEmacsとか使って端末で全て完結させればいいっていう話もあるのですが、 そこはUnixの設計思想*1を都合良く解釈してなんとかしましょう! WebブラウジングにはWebブラウザを使ったっていいし、音楽を聴くために各種メディアプレイヤーソフトを使ったっていいと思うのです。 しかしながら、ウィンドウとかをキーボードだけで操作しようとすると結構面倒でマウスを使ってしまう回数が増えて効率がなんだか悪い*2ので、 CompizというLinuxで動くオサレなウィンドウマネージャを使ってマウスの使用回数を減らす方法を書いていきます。 ちなみに 気でキーボードだけで動かしたいならタイル型ウィンドウマネージャというのがあるので、それを使うといいと思います! http://sourceforge.jp/projects/tilingwm/wiki/FrontPage

    キーボード派におすすめするLinuxのCompiz設定 - voidy21の日記
    tyru
    tyru 2009/11/28
    画面分割は2x1で(ry
  • ページ移転のお知らせ

    ユークエスト株式会社は2021年10月1日をもちまして、 株式会社東光高岳に吸収合併を致しました。 Webサイトは下記のURLに移転しました。 https://uquest.tktk.co.jp/ ※5秒後に移転先にジャンプします。

  • Big Sky :: GoでGTK

    やっぱり新しい言語が出来たらGUIだよね! って事でGTKバインディング作ります! mattn's go-gtk at master - GitHub gtk extension for go http://github.com/mattn/go-gtk Goでは継承が使えないので、例えばGtkBoxを継承したGtkVBox/GtkHBox、GtkWidgetを継承したGtkWindow/GtkButton/GtkLabel...が上手く表現出来ません。 出来ないというか、GtkButtonにGtkWidgetと同じメソッドを生やそうと思うと、同じコードを書かなければなりません。 色々と模索した結果、gtk.Window()やgtk.Button()で返すのは常にGtkWidgetとし、GtkWindowやGtkButton独自のメソッドを呼び出したい場合には (&gtk.GtkWindo

    Big Sky :: GoでGTK
  • 警察に通報が『あだ』、取引停止も 市橋容疑者勤務の建設会社 - 47NEWS(よんななニュース)

    将棋・第49期棋王戦第3局 新潟対局]現在の状況は?最新の状況を速報・テキストライブ 藤井聡太棋王VS伊藤匠七段

    警察に通報が『あだ』、取引停止も 市橋容疑者勤務の建設会社 - 47NEWS(よんななニュース)
    tyru
    tyru 2009/11/28
    今更だけどすげーバカバカしい。