2009-04-01から1ヶ月間の記事一覧

GWの予定

5/1 関西に移動 NAISTの入試説明会に参加 5/2 関西SVC事後ミーティングに参加 5/3 関西から熊本に移動 5/4 やっちろ.Rに参加 5/6 筑波に戻る という感じでわりとばたばたと過ごします。大学入ってからGWらしい過ごし方をするのは大学一年の時以来な感じだな…

クイックソート

数学的基礎とデータ構造 (アルゴリズムイントロダクション)のp140付近。 クイックソートも分割統治のアルゴリズム A[q]で配列を2つの部分配列に分解、A[q]より大きいか小さいかで分解する 部分配列の中でもクイックソートする 全ての部分配列の中でソートさ…

優先度付きキュー

数学的基礎とデータ構造 (アルゴリズムイントロダクション)のp131付近。エラー処理をさぼっている。。。 ヒープソートは優れたアルゴリズムだけど、ソートのアルゴリズムとしてはクイックソートのほうが実際上より優れている なんだって!! でも、ヒープのデ…

ヒープソート

数学的基礎とデータ構造 (アルゴリズムイントロダクション)のp129付近。これまで作ってきた ヒープ条件の維持 ヒープの構築 を元にヒープソートを行こなう。ヒープの根を取り除いて(根は必ず一番大きくなっている性質を利用)、ヒープを再構成というのを繰り…

ヒープの構築

数学的基礎とデータ構造 (アルゴリズムイントロダクション)のp126付近。 use strict; use warnings; sub parent { my $i = shift; return int($i/2); } sub left { my $i = shift; return 2 * $i; } sub right { my $i = shift; return 2 * $i + 1; } sub he…

ヒープ条件の維持

数学的基礎とデータ構造 (アルゴリズムイントロダクション)のp124付近。 use strict; use warnings; sub parent { my $i = shift; return int($i/2); } sub left { my $i = shift; return 2 * $i; } sub right { my $i = shift; return 2 * $i + 1; } sub he…

Ruby&Perlでマージソート

数学的基礎とデータ構造 (アルゴリズムイントロダクション)のp28付近にあるマージソートをRubyでそのまま書きくだす簡単なお仕事。2行で書けるとかそんなの知るか。 require 'pp' def merge_sort(a, p = 1, r = a.length) def merge(a, p, q, r) n1 = q - p …

線形回帰モデル

明日発表の分のゼミの資料。PRMLの3.1.2から3.1.5までです。先週のはこの辺に書いている。 今日の日記 - yasuhisa's blog 最小二乗法の幾何学 ここではN=3と固定して考えてみる ということなので、3次元空間で考える 各軸が、、で与えられる3次元空間 図につ…

gitで二台のmacbookを同期させる

git

バイト先からmacbookを支給してもらったので、手元にmacbookが二台ある*1。それはそれでいいんだけど、同期というなかなかやっかいな問題が待っているので、gitでどうにかしてみようと思いどうにかしているlog。 設定ファイル .emacsや.zshrcなどの設定ファ…

専門用語の辞書の加工

こんな感じになっている辞書から zygoma (解剖)頬骨 zygomatic 頬骨の zygomycete (生物)接合菌 zygomycosis (病名)接合菌症 zygote 接合体, 接合子 zygote nuclei (解剖)《複》接合体核 zygote nucleus (解剖)接合体核 zygotene 合糸期, ザイゴテ…

PNEのtxtからkeywordを引っこ抜く

専門用語の辞書を作りたい。そう考えるとPNEのkeywordとかはそのまま辞書の単語として登録できそうなので、引っこ抜いてくることにした。原型はここを参考にしつつ。 年ごとに頻度の高い単語をファイルに出力する - Seeking for my unique color. nkfにファ…

アルゴリズムデザインの勉強会

某数理計画系であっているので、参加させてもらっている。教材はこれ。アルゴリズムデザイン作者: Jon Kleinberg,Eva Tardos,浅野孝夫,浅野泰仁,小野孝男,平田富夫出版社/メーカー: 共立出版発売日: 2008/07/10メディア: 単行本購入: 10人 クリック: 421回こ…

YaTeXとAquaSKKの相性が悪いような気がしたから、ddskkというのをインストールしてみた

実解析の授業のノートをTeXで取っていたんだけど、日本語と英数を切り変えるときに挙動がおかしいことに気がついた*1。どうしたらいいのかと思っていたらddskkというのを使うといいよと勧められたので、インストールした。 Carbon Emacs に ddskk をインスト…

今日の日記

新学期が始まったなあああという感じのかなり忙しい一日。ゼミの準備を夜にやっていて一限からだったからもうくたくた。理論統計学理論統計学は去年も受けて今日は特に難しいこともなかったからよかったと言えばよかったんだけど、質問をするところがないと…

JTPAのSVCで感じたこと、考えたこと。そしてこれから

SVC

夜10時から開始して朝まで話していたmimithon#4会場から、SVC報告会に向かいました*1。集まった人数としては30人くらい。中心はSVCに参加したメンバーなんだけど、来年参加したいという人や第一回のツアー参加者だったよという人などなど色々な方がおられま…

mimithon#4会場なう

C++

id:mickey24、id:negaton、id:repose、id:yag_ays、id:totteと。 autopointerというのがあるらしい STLにつっこむとやばいらしい shared pointerについて書いてある本があるらしい リファレンス 変数に別名を付けられる ポインタに限らず int& n; アドレス、…

単語の登場回数がどういう分布をしているか見てみる

今日は講習会があっていたので、蛋白質核酸酵素のほうを調べるお仕事ができていなかったので、電車の中で書いてみる*1。単語の登場回数というのはたぶんlong tailをしているんだろうなーというのは予想がつくんだけど、どのくらいlong tailなのかを調べてみ…

統合データベース講習会: AJACS本郷4

AJACS9 - MotDB 「はじめに:統合データベースプロジェクトとは?」 DBが整っていないと、知のめぐりのよりライフサイエンス研究ができない 全国でやっている(6回の講習会と2回の勉強会) DB内の記述(アノテーション)は正しい? 問題点 DBが散在している、利用…

興味ある本、気になる本

岩波講座 ソフトウェア科学〈〔知識〕15〉自然言語処理作者: 長尾真,佐藤理史出版社/メーカー: 岩波書店発売日: 1996/04/26メディア: 大型本購入: 1人 クリック: 16回この商品を含むブログ (18件) を見る自然言語処理の参考書になっていた。数学的基礎とデー…

C++の練習として、グラフを表わすようなクラスとかを作ってみた

C++

土曜日にid:mickey24に叩かれる予定地のところ。墓場予定地。事前空爆も歓迎。グラフにEdgeとArchを与えてあげると、グラフクラスのインスタンスを生成。始点と終点を入力するとそこまでの経路を木構造で表示する、みたいなプログラムです。最短路はどれか、…

アルゴリズムデザイン

やるらしい。日本語買うか英語買うか悩みんぐ。アルゴリズムデザイン作者: Jon Kleinberg,Eva Tardos,浅野孝夫,浅野泰仁,小野孝男,平田富夫出版社/メーカー: 共立出版発売日: 2008/07/10メディア: 単行本購入: 10人 クリック: 421回この商品を含むブログ (51…

熊本でRの勉強会があるらしい!!

R

Tsukuba.R#5どうしようかと話していたりする感じだったんですけど、まさか地元でできるとは思っていなかった!! やっちろ.R in 熊本 : ATND というわけで、GWに熊本、九州付近帰省している人たち集合!!

C++ではまって、うさみみ先生ににやにやされたので、はまったところをまとめておく

C++

講師はid:mickey24先生。離散最適化理論の授業でグラフ理論な話が出てきたので、路(path)をツリー構造で表わしたいなーとか思った*1。なので、木構造を作ることにした。最初のプログラムはこんな感じ。 木構造自体はこの辺でやっていたので、これを参考にTre…

爆弾を投下された

id:blanc_et_noirこと黒猫さんとご飯を食べながらお話させてもらった。SVCで俺が感じたことを話したりもしたんだけど、黒猫さんが就活やる中で考えてたこととかが半端なく勉強になる。というか俺何も考えてないな。。。色々話したけど、 「トップダウンに考…

年ごとに頻度の高い単語をファイルに出力する

C++

#include <iostream> #include <fstream> #include <string> #include <vector> #include <map> #include <mecab.h> #include <boost/filesystem/operations.hpp> #include <boost/filesystem/path.hpp> #include <boost/filesystem/fstream.hpp> using namespace std; using namespace boost::filesystem; typedef map</boost/filesystem/fstream.hpp></boost/filesystem/path.hpp></boost/filesystem/operations.hpp></mecab.h></map></vector></string></fstream></iostream>

boostでディレクトリにあるファイル一覧を得る

エラー処理とかしてないけど、とりあえずこれでよし。 #include <iostream> #include <boost/filesystem/operations.hpp> #include <boost/filesystem/path.hpp> #include <boost/filesystem/fstream.hpp> using namespace std; using namespace boost::filesystem; int main(void) { path fullPath = complete(path("/Users/yasuhisa/dbcls/pne/year…</boost/filesystem/fstream.hpp></boost/filesystem/path.hpp></boost/filesystem/operations.hpp></iostream>

ふつーの日記

何か上を見ていると、重複の多いコードばっかりのエントリが並んでいて自分もよく分からない感じになっているけど、面倒なので放置しておこうと思う。そんなわけでDBCLSに朝からバイトに行きまして、C++にいじめられて、夜はid:suztomo宅にてid:hayamizとid:…

C++で単語の登場回数を数える

C++

昨日Rでおわたになっていたので、C++でリベンジマッチをするべく準備を進める。 #include <fstream> #include <string> #include <vector> #include <map> #include <iostream> #include <mecab.h> using namespace std; vector<string> split( string s, string c ){ vector<string> ret; for( int i=0, n; i <= s.length(); i</string></string></mecab.h></iostream></map></vector></string></fstream>…

登場した単語の回数を数える

C++

Perlとかの本の最初に出てきそうなやつですね。文字列からMeCabでsplitしていたりする付近は違うけど。C++でRubyとかPerlとかのsplitは付属していないんですか><。 #include <string> #include <vector> #include <map> #include <iostream> #include <mecab.h> using namespace std; vector<string> split(</string></mecab.h></iostream></map></vector></string>…

vectorのmap

C++

#include <iostream> #include <map> #include <vector> using namespace std; int main() { vector<int> a,b; int i; for( i = 0; i < 4; ++i ){ a.push_back( i ); } for( i = 5; i > 0; --i ){ b.push_back( i ); } map<string,vector<int> > hash; hash["a"] = a; hash["b"] = b; map<string,vector<int> >::iterator i…</string,vector<int></string,vector<int></int></vector></map></iostream>