2009-04-30から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…