タグ

2012年10月11日のブックマーク (2件)

  • phpで未定義の変数にアクセスしてみた - It's raining cats and dogs.

    phpで未定義の変数に対してアクセスしてみると不思議な挙動をしますね。 未定義(or null)の変数に対してプロパティっぽいアクセスをしてみる $ php -a php > // $a = null; でも同様 php > $a->hoge = 'test'; php > var_dump($a); object(stdClass)#1 (1) { ["hoge"]=> string(4) "test" } なにこれこわい。。。何も宣言してないのにstdClassのオブジェクトを作って、勝手にプロパティまで作ってくれた! ちなみにerror_reportingでE_ALL、E_STRICTを設定するとnoticeがでます $ php -a php > error_reporting(E_ALL | E_STRICT); php > $a->hoge = 'test'; Strict St

    phpで未定義の変数にアクセスしてみた - It's raining cats and dogs.
    at_home
    at_home 2012/10/11
    こういうところがPHPがスパゲッティになる要因かも・・・
  • アルゴリズムと計算量

    金庫破りと計算量膨張 n 桁の番号をもつ暗証ロックがあるとします。 2 桁であれば 00 〜 99 の 100 個の正解があるわけで、 0 番から順に入力していく解き方では、 最悪の場合は 100 手目に開きます。 99 が正解とは限らないので、平均的にはこれより早く解き終わります。 0 であるときの確率は 1/100 で、このときの手数は 1 手です。 1 であるときの確率は 1/100 で、このときの手数は 2 手です。 2 であるときの確率は 1/100 で、このときの手数は 3 手です。 3 であるときの確率は 1/100 で、このときの手数は 4 手です。 : 99 であるときの確率は 1/100 で、このときの手数は 100 手です。 つまり、平均手数は により、100 手目の約半分です。 ここでいう解き方をアルゴリズムといい、 問題を解くための手数 (てかず) のことを計算

    at_home
    at_home 2012/10/11
    これは押さえておきたい基礎数学