読者です 読者をやめる 読者になる 読者になる

ikemonn's blog

技術ネタをちょこちょこと

【アルゴリズム】Javaプログラマのためのアルゴリズムとデータ構造(第4章の2)

4.4.3 スタックの使用例 - 逆ポーランド電卓 逆ポーランド記法とは演算子を後ろに置く記法。 スタックを使って以下のように計算する。 1. 数値ならそのままスタックに積む 2. 演算子なら2つの数をスタックからおら押して演算を行い、その結果をスタックに積…

【アルゴリズム】Javaプログラマのためのアルゴリズムとデータ構造(第4章)

4.2 スタック スタックとは挿入と削除がリストの先頭のみで行われるもの。 挿入をPush、削除をpopという。 本を地面に並べるイメージ 4.3 待ち行列 挿入(enqueue)が一方の端のみで行われ、削除(dequeue)が反対の端でのみ行われるリストのこと。 ATMで順番待…

【アルゴリズム】Javaプログラマのためのアルゴリズムとデータ構造(第2章の2)

2.2.2 二分探索法による探索の計算量 二分探索法とは、あらかじめキーが昇順に整列されている配列の中から特定のキーを持つデータを探しだすアルゴリズム public class BinarySearch { /* * テーブルのエントリ */ static public class Entry { int key; //…

【アルゴリズム】Javaプログラマのためのアルゴリズムとデータ構造(第2章)

2.1 アルゴリズムの性能の基準 アルゴリズムの性能の基準をどのように定めるか? アルゴリズムを実際にコンピュータに実行させて時間を計測するのはどう? ダメ。問題点が3つある。 マシンによって得意・不得意な処理があるので客観的ではない プログラムの…

【アルゴリズム】Javaプログラマのためのアルゴリズムとデータ構造(第1章)

1.1 「プログラムを書く(プログラミング)」という行動は、 問題を分析して、何をするプログラム化を決める(仕様の決定) どんなアルゴリズムとデータ構造を使用すればよいのかを選択する 実際にプログラムを書く この2.に関して、アルゴリズムを学べば強く…