コンピュータ

明解 Javaによるアルゴリズムとデータ構造 6-1_ソートとは

6-1 ソートとは 安定性 安定 stable 同一キーを持つ要素の順序関係が、ソート前後で必ず維持される 不安定 同一キーを持つ要素の順序関係が、ソート前後で維持されるとは限らない ソートの種類 内部ソート ソート対象データが、1配列上に展開可能な場合に用…

明解 Javaによるアルゴリズムとデータ構造 5_再帰的アルゴリズム

5-1 再帰の基本 メソッド内で自分を呼びだす 階乗 ユークリッドの互除法 ハノイの塔 5-2 再帰アルゴリズムの解析 解析 トップダウン ボトムダウン 真に再帰的 メソッド内で自身を複数回呼び出すもの 挙動が複雑 非再帰への書き換え 末尾再帰は容易 - http://…

明解 Javaによるアルゴリズムとデータ構造 4_スタックとキュー

4-1 スタック フィールド: スタックの容量・ポインタ。後入れ先出し(LIFO - Last In First Out)。 push, pop, peek, dump indexOf, size, clear, capacity isEmpty, isFull 疑問 総称クラスが java.lang.Throwable をサブクラス化できないのってなんでだっけ…

明解 Javaによるアルゴリズムとデータ構造 3_探索

3-2 線形探索 単純な線形探索(順次探索) 1インデックスにつき、2つの条件文をチェックするコストが発生 if index >= array.size() then search failed if array[i] = key then search succeeded 番兵法 1インデックスにつき、1つの条件文チェックでOK。単純…

プログラミングスキルがボトルネック

じゃばがまだまだわからない。 やりたいことを具現化できないもどかしさ。 ロジックを組み立てるのもなかなかムズいのに、それを実装するのがムズくていらいらする。 プログラミングに長けた人とそうでない人とでは時間にして数十倍の差がつく。 これは身に…

予想以上に進んでいる感

Computer Program Self-Discovers Laws of Physics - Wired Science 論文読んでないから何とも言えんが、ブレイクスルーを迎えちゃった感はある。 問題はヒトがまだ知らない法則をコンピュータが見つけだしたとき、それを我々が受け入れられるかどうか。

FE午後の勉強未着手

非常にやばい。 明日からかかりたい。 昼休みにでも問題集買いに行く。 午前の知識はだいたいイケる、んか??

「スラスラわかる」は言い過ぎ

基本情報 受かる100講〈2008‐2009年版〉―赤ペン式でスラスラわかる この本の欠点は、記述が論理的ではないところ。 試験対策本なんだから語の定義が大事なのに、同一単語が頻出する場面では修飾が不足しているために、ページ内に複数ある同一単語のどれを指…

基本情報(FE)受けることにした

簿記だけやってて飽きてきたので、時間を有効に使うという意味合いも込めて、こちらも並行して勉強することにします。 近く(といっても原チャリで15分ぐらいかかる)の TSUTAYA で買ってきたのがこれ。 基本情報 受かる100講〈2008‐2009年版〉―赤ペン式でスラ…

初級シスアドでもとろうかな

おまじない資格とは思いつつ、実際に問題やったこと無いんよね。 情報処理系の資格ひとっつも持ってないし、次回で最後だし、記念に受験してみようかな。 ある程度ITに馴染んでいる人には問題にどんどん取り組む方が手っ取り早いみたい。 実際過去問(午前 | …

Ubuntu8.10 インストール

U100 Extra に ubuntu 入れた。 Wine もまあいいんだけど、やっぱこっちのデザインの方がしっくり来るんよね。 ということでせっかくなので aircrack-ng とかその辺試してみた。 Ralink RT2180 のドライバー入ってないから、 http://ppa.launchpad.net/stgra…

社会じゃ理論は応用してナンボ

Don't Overthink FizzBuzz こんぴーたさいえんすでも、やっぱ応用は大事なんだねぇという話。 実際、プログラムの原理自体は簡単なんだけれど、クラス名やパッケージ名が思い出せなかったりして四苦八苦すること結構あるよね。 手を動かそうと思いましたよ。

1.1.3 Evaluating Combinations

「順序立てて考える」という問題を、個別的に捉えよう combinationを計算するには… 入れ子の中身を計算する operatorをoperandに作用させていく ここにミソがある combinationを「計算」するのに、まず、入れ子の「計算」をしている つまり計算の規則自体が…

1.1.2 Naming and the Environment

プログラム言語の大事な役割として、「データと名前をひも付けすること」がある 名前を、「データ(値)を持った変数」と定義する (define size 2) "2"というデータを、"size"という名前にひも付けした 以降は"size"という名前で、"2"というデータを呼び出せる…

1.1.1 Expressions

MIT-Schemeでプログラミングする C-x C-eで実行 (+ 137 349) 486 (- 1000 334) 666 (* 5 99) 495 (/ 10 5) 2 (+ 2.7 10) 12.7 ()で囲まれたもの: combinations (の次の文字: operator(演算子) それ以外: operands(被演算子) 左端に演算子を置く慣習: 前置表…

1.1 The Elements of Programming

よくできた言語は、思考を構成するための容れ物としての役割も持っている つまりその言語で出力しようとすると、言語の持つ仕組みによって「自然に」整理されるということ 「よくできた」言語が持つ三つの条件 根源的表現 合成 抽象化 「手順(課程)」と「デ…

Chapter 1: Building Abstractions with Procedures

導入みたいなもの 単純な概念から知を引き出す秘訣 - John Locke, An Essay Concerning Human Understanding (1690) 単純な概念を次々くっつけていく ぱっとお互いの視点がわかるように、複雑・単純の概念を取り入れる 概念を現実から切り離し抽象化する 電…

SICP一緒に読みませんか

今これを読んでる人で、SICPに興味がある人いませんかね。 楽しくまったり、継続的に読み進めたいなあと思っとります。 「知ったか、ダメゼッタイ!」と題しまして(うそ)、わからんところは教えを請うて、しっかりつぶしていければいいなぁ。 場所はオサカ市…