FUJILOG

見た、聴いた、触れたこと。 動かしたもの、書いたもの。 ウェブとリアルの備忘録です。

code と algorithm 周辺のこと

数学オリンピック同様、ICPCなるプログラミングコンテストも世界大会があるようで。。

詳細はid:tanakh さんの2006ICPCの参加記から伺うことできます。


http://fxp.hp.infoseek.co.jp/icpc2005/wf/4.html
(前述のURLにもあるのだけど、出題問題PDF@ICPC20062007

それで、初めて耳にしたキーワード周辺を少し調べてみようかと。

ダイクストラ、ベルマンフォード、などのアルゴリズム名でGoogleってみると、適切な通信経路選択する上で利用されているとのこと。

実生活とアルゴリズムを意識するきっかけって改めて少ないなー、、暗号とかいじることもなく。
サーチエンジンの裏側でページランク算出するのに使われるとはいえ、公開されているのではないし。
 
 ・(検索エンジンを作ろう~記事)
 
 ・(Google検索ランキング要素の推測)
 
 ・(dan さんの「知っておきたい10のアルゴリズム」)
 

それとは別に、アルゴリズムとコードでは奥村晴彦先生の「『C言語による最新アルゴリズム事典』  技術評論社,1991年」を読んだものの、まだ活用するタイミングがなひ。


途中、コードアーカイブが発見されたので後日見てみる。

アルゴリズムコード

例えばSearch Algorithm 項目
EXACT STRING MATCHING ALGORITHMS
(http://www-igm.univ-mlv.fr/~lecroq/string/)
のページを開くと、「人名+algorithm」でコードとアルゴリズムが一覧できる。

アルゴリズムページには "Visualization" ボタンが設置されていて、これを押すとテストデータに対してコードが実行されるというおもしろもの(Java appletの動作)。。

さっとデータ入れて動かせて、コードの挙動を見れる仕組みは良い学習素材と思う。



(追記)
計算幾何工学とアルゴリズム?画像解析とか複雑そう‥
http://tokweb.ics.es.osaka-u.ac.jp/toklab/research/compg/index-j.html