タグ

2014年3月12日のブックマーク (14件)

  • fast sqrt

    高速根号計算 (fast sqrt algorithm) 概要: C言語のsqrt(float)より精度は若干劣るものの,2倍以上速いsqrtのalgorithm. ググって見つけた物が,非常に面白かったのでまとめておく.精度より速度が求められる場面で活躍する.   参考文献 [1] David Eberly, Fast Inverse Square Root (Revisited), http://www.geometrictools.com/Documentation/ FastInverseSqrt.pdf, 1/2002-. 実装 //---Algorithm float(IEEE754)用------ inline float t_sqrtF( const float& x ) { float xHalf = 0.5f * x; int tmp = 0x5F3759DF

    mnru
    mnru 2014/03/12
  • Fast inverse square root - Wikipedia

    Lighting and reflection calculations, as in the video game OpenArena, use the fast inverse square root code to compute angles of incidence and reflection. Fast inverse square root, sometimes referred to as Fast InvSqrt() or by the hexadecimal constant 0x5F3759DF, is an algorithm that estimates , the reciprocal (or multiplicative inverse) of the square root of a 32-bit floating-point number in IEEE

    Fast inverse square root - Wikipedia
    mnru
    mnru 2014/03/12
  • コンピュータを進化させてきた偉大なるアルゴリズムまとめ

    By Kai Schreiber IT技術の進化のスピードには目を見張るものがありますが、それを支えているのはアルゴリズムと呼ばれる処理方法(技術的アイデア)です。さまざまなアルゴリズムの中でも、コンピュータの進化に革命的な影響をもたらしたとされる偉大なアルゴリズムは以下の通りです。 Great Algorithms that Revolutionized Computing http://en.docsity.com/news/interesting-facts/great-algorithms-revolutionized-computing/ ◆ハフマン符号(圧縮アルゴリズム) Huffman coding(ハフマン符号)は、1951年にデービッド・ハフマン氏によって開発されたアルゴリズム。頻出頻度の大小によって対戦するトーナメントツリーを考えて、ブロックごとに0と1の符号をもたせる

    コンピュータを進化させてきた偉大なるアルゴリズムまとめ
    mnru
    mnru 2014/03/12
  • キャストと型変換 - C#

    C# はコンパイル時に静的に型指定されるため、変数を宣言した後、その型が変数の型に暗黙的に変換可能でない限り、変数を再び宣言したり、別の型の値を代入したりすることはできません。 たとえば、string を int に暗黙的に変換することはできません。 そのため、次のコードに示すように、i を int として宣言した後、"Hello" という文字列を代入することはできません。 int i; // error CS0029: can't implicitly convert type 'string' to 'int' i = "Hello"; しかし場合によっては、別の型の変数やメソッドのパラメーターに値をコピーする必要が生じることもあります。 たとえば、パラメーターが double として型指定されたメソッドに、整数の変数を渡す必要が生じることもあるでしょう。 また、クラス変数をインターフ

    mnru
    mnru 2014/03/12
  • 参照渡し

    概要 プログラミング言語での値の受け渡しの方法には 値渡し(pass by value)と参照渡し(pass by reference)という2つの方法があります。 C# では、値の受け渡しは基的に値渡しになります。 しかし、ref や out といったキーワードを使うことで参照渡しにすることが出来ます。 ポイント 値渡し: メソッド内で引数の値を書きかえても、呼び出し元には影響しない。 参照渡し(ref): メソッド内での値の書き換えの影響が呼び出し元に伝搬する。 out: 特殊な参照渡し。戻り値以外にも値を返したいとき(複数の値を返したいとか)に使う。 値の受け渡し 値の受け渡しが発生する場所は何カ所かあります。例えば以下のような場所です。 変数から変数 変数から引数 戻り値から変数 var x = 1; var y = x; // x から y に値を渡す static void

    参照渡し
    mnru
    mnru 2014/03/12
    out キーワードを用いて宣言された引数は参照渡しになります。 ref キーワードとの違いは、上述のとおり、 メソッド呼び出し前に初期化する必要がなく、 メソッド内で必ず値を割り当てなければいけない点です。
  • Making of Parallel LINQ for Java

    この記事は、新感覚アドベントカレンダー、LL/ML Advent Calendar 2012 (#LLAdventJP) の12月12日分トラック1です。 おそしろいことに、気づけば投稿者として登録されていました。唯一の救いは、タイトルに「MとL」または「Lが2つ以上」入っていれば何を書いてもいいことです。 Making of ParaLLeL LINQ for Java ごらんください、LLにいたっては2つも入っています。 ざっくりしたLINQの紹介 LINQは、配列やデータベースのような何らかの「データの集まり」に対する、とても便利な道具です。数多くの便利な問い合わせ演算子を組み合わせて、どんなデータの集まりでも同じように操作することができます。 var top5 = list.Where(o => 東海三県.Contains(o.住所)) .OrderByDescending(o =

    Making of Parallel LINQ for Java
    mnru
    mnru 2014/03/12
  • シグナル&ノイズ 天才データアナリストの「予測学」: ネイト・シルバー, 西内啓, 川添節子: 本

    シグナル&ノイズ 天才データアナリストの「予測学」: ネイト・シルバー, 西内啓, 川添節子: 本
    mnru
    mnru 2014/03/12
  • C#でmap(写像)、foldlとfoldr(畳み込み)、unfold(解きほぐし)とか - Bug Catharsis

    ※追記しました。2008/12/16 オブ脳寄りの人間なので、どうしても関数型脳に染まりきれないところはあるんですが、 今年Haskellを学んでみて、foldとかunfoldってのは、すっげー便利だなと思いました。 そんなわけで、C#でちょっくらfoldとかunfoldしてみようの巻。 public static class Extentions { /// <summary> /// map(写像) /// </summary> /// <typeparam name="T"></typeparam> /// <typeparam name="TResult"></typeparam> /// <param name="source"></param> /// <param name="func"></param> /// <returns></returns> public stat

    C#でmap(写像)、foldlとfoldr(畳み込み)、unfold(解きほぐし)とか - Bug Catharsis
    mnru
    mnru 2014/03/12
    Selectはmap、Aggregateはfoldl,Whereはfilter
  • https://atmarkit.itmedia.co.jp/fdotnet/dotnettips/045getbytes/getbytes.html

    mnru
    mnru 2014/03/12
  • Industrial/embedded Computer, PC-based DAQ Add-on | CONTEC

    PC-HELPER - PC-based DAQ & Control PC-HELPER - PC-based DAQ & Control TOP Raspberry Pi cards USB modules PCI express cards PCI cards Wireless I/O modules Ethernet I/O modules Software FLEXLAN™ IoT - IoT Network IoT networking overview Embedded wireless LAN modules Switching HUBs

    mnru
    mnru 2014/03/12
  • Enumerable.Sum メソッド (System.Linq)

    このブラウザーはサポートされなくなりました。 Microsoft Edge にアップグレードすると、最新の機能、セキュリティ更新プログラム、およびテクニカル サポートを利用できます。

    Enumerable.Sum メソッド (System.Linq)
    mnru
    mnru 2014/03/12
  • Real World Haskell の古いところ - あどけない話

    Real World Haskell の内容が古くなってきたので、どこが古いかとか、それに変わる新しいものは何とか、まとめたいと思う。 Real World Haskell―実戦で学ぶ関数型言語プログラミング 作者: Bryan O'Sullivan,John Goerzen,Don Stewart,山下伸夫,伊東勝利,株式会社タイムインターメディア出版社/メーカー: オライリージャパン発売日: 2009/10/26メディア: 大型購入: 8人 クリック: 245回この商品を含むブログ (76件) を見る 1章 始めましょう 今でも通用する。 2章 型と関数 今でも通用する。 3章 型を定義し、関数を単純化する 今でも通用する。 4章 関数プログラミング ghc に --make オプションはもう不要。 5章 ライブラリを書く 5.14節では、"runghc Setup build" の

    Real World Haskell の古いところ - あどけない話
    mnru
    mnru 2014/03/12
  • 社会科学者から見た統計学――公文俊平×西内啓【前篇】

    東京大学医学部卒(生物統計学専攻)。東京大学大学院医学系研究科医療コミュニケーション学分野助教、大学病院医療情報ネットワーク研究センター副センター長、ダナファーバー/ハーバードがん研究センター客員研究員を経て、現在はデータを活用する様々なプロジェクトにおいて調査、分析、システム開発および人材育成に従事する。著書に『統計学が最強の学問である』(ダイヤモンド社)、『1億人のための統計解析』(日経BP社)などがある。 統計学が最強の学問である 2013年1月に発売されるや、ビジネス・経済書としては異例のベストセラーとなり、統計学ブームの端緒となった『統計学が最強の学問である』。同書の発刊1周年と30万部突破を記念して行われた、著者の西内啓氏と二人の科学者[多摩大学情報社会学研究所所長・公文俊平氏、物理学者・楽天株式会社執行役員・北川拓也氏]との対談を公開する。 バックナンバー一覧 2013年1月

    mnru
    mnru 2014/03/12
  • ADTがJava7に対応したらしいのでメモ - みんからきりまで

    ADTが22.6.0になり、Java7に対応したらしいです。 http://developer.android.com/tools/sdk/eclipse-adt.html ADTのアップデートはEclipseならヘルプ→更新の確認をすれば行えます。 Java7でコードを書くにはプロジェクトのプロパティからJavaコンパイラを1.6から1.7に変更するだけです。 もしくはJava7の構文を書いてエラーにカーソルを合わせればワンクリックで設定を変更してくれます。 というわけでJava7で追加された機能をおさらいメモ。 といってもJava7の全てに対応しているわけじゃないようなので、実際にAndroidで使えたもののみ。 switch文にStringが使えるようになった 今まではbyte、char、short、intもしくはenumのみが使えたswitch文でStringが使えるようになりまし

    ADTがJava7に対応したらしいのでメモ - みんからきりまで