タグ

アルゴリズムに関するsujiiのブックマーク (8)

  • 長文日記

    長文日記
  • コンテンツに最適なソートを使おう! JavaScriptで使用するソートアルゴリズムのまとめ - ICS MEDIA

    普段、みなさんはプログラムでデータのソートをするとき、内部でどのようなアルゴリズムが働いているか意識していますか? 大半の方はプログラム言語にあらかじめ用意されているソート関数を使用し、特別にアルゴリズムについて意識することは少ないと思います。ソートのアルゴリズムにはデータ量やデータの初期の状態に応じた向き不向きがあり、それぞれのアルゴリズムについての理解を深めて適したものを選択すると、ソートにかかる時間を短縮できることがあります。 ソートアルゴリズムの可視化デモ (HTML5製) 次のデモはソートのアルゴリズム可視化するコンテンツです。HTML5 Canvas要素とJavaScriptで作成しています。画面下のプルダウンでアルゴリズムの種類を選択すると、ランダムに配置されたデータが選択した方式に応じたアルゴリズムでソートされる様子を表示します。 デモを別ウインドウで再生する ソースコード

    コンテンツに最適なソートを使おう! JavaScriptで使用するソートアルゴリズムのまとめ - ICS MEDIA
  • JavaScriptでフーリエ変換 - 音の鳴るブログ

    timbre.js で使っていたものを分離した https://gist.github.com/3063634 フーリエ変換してスペクトルいじって逆変換かけるとイコライザになる。スペクトル合成。 http://thisis.herokuapp.com/ffteq/ アルゴリズムはこれを参照 C言語による最新アルゴリズム事典 (ソフトウェアテクノロジー) 作者: 奥村晴彦出版社/メーカー: 技術評論社発売日: 1991/03メディア: 単行購入: 19人 クリック: 344回この商品を含むブログ (94件) を見る

    JavaScriptでフーリエ変換 - 音の鳴るブログ
  • アルゴリズムの勉強のしかた - きしだのHatena

    この記事で、アルゴリズムの勉強はアルゴリズムカタログを覚えることじゃないよということを書きました。 プログラムの理論とはなにか アルゴリズムの勉強というのは、スポーツで言えば腕立て伏せや走り込みみたいな基礎体力を養うようなもので、「ソートなんか実際に自分で書くことないだろう」とかいうのは「サッカーは腕つかわないのに腕立ていらないだろう」とか「野球で1kmも走ることなんかないのに長距離の走り込みいらないだろう」とか言うようなものです。 Twitterでアルゴリズムの勉強とはなにかと尋ねられて、「アルゴリズムの基的なパターンを知って、それらの性質の分析のしかたをしって、いろいろなアルゴリズムでどのように応用されているか知って、自分が組むアルゴリズムの性質を判断できるようになることだと思います。 」と答えたのですが、じゃあ実際どういうで勉強すればいいか、ぼくの知ってるからまとめてみました。

    アルゴリズムの勉強のしかた - きしだのHatena
  • 画像修復プログラムを作った

    OpenCVを使って、欠損領域を含む画像に対して画像修復を行うプログラムを作成しました。参考にした論文はこちらです。かなりGreedyで時間のかかるアルゴリズムですが、結果画像のクオリティは高いです。 Y. Wexler, E. Shechtman and M. Irani, Space-Time Video Completion. IEEE Conference on Computer Vision and Pattern Recognition (CVPR), Washington, June 2004. 入力画像がこちら。 赤色正方形の部分を欠損領域として指定しています。 修復結果がこちら かなりのクオリティで修復できているのが分かりますね。アルゴリズムとしては、先日紹介した4種類のうち4番目の「テクスチャの全体最適化による画像修復」に相当します。 このアルゴリズムの基的なアイデア

  • Flashでグニグニ曲がるUIを作る方法 - しっぽのブログ

    前にtwitterアイコンやpixivの画像をプヨプヨすることのできるpuyopixというコンテンツを作りました。 Puyopix -プヨプヨにするよ- このページの右上にあるブログパーツもこれです。 解説をやると言っておいて、ずっと書いていなかったので書きます。 あんまりコードだらけにしても面白くないし、方法の概念的なものを図を交えながら説明していきます。 画像をプヨプヨする方法の概要と、それをUIに応用する方法です。 プヨプヨの実装 骨組みを作る 格子状バネという、わりと普通の実装をしています。 格子状に並んだ各点をばねのように接続します。 バネはお互いの点の距離が一定になるように、2つの点に逆方向の力をかけます。 フックの法則というのがあって、「F = -kx」とかいう式もありますが、プログラムとしての感覚は「来あるべき距離の方向へ、ズレた分の○%だけ加速度をつける」って感じになり

  • 定番アルゴリズムを徹底理解! - 今からでも遅くない!アルゴリズム入門:selfup

    このパートでは,プログラミングを勉強するうえで欠かせないアルゴリズムの中でも定番中の定番を紹介します。ソート(並べ替え)やサーチ(検索)などの機能は今では標準のライブラリとして提供されています。実用的なプログラムを作るときにそのものずばりをいちいち書く機会は少ないかもしれません。しかし定番のアルゴリズムは,様々に形を変えて普段のプログラミングに登場します。 解説を読んで仕組みがわかったら,ぜひそれをプログラムにしてみてください。読んだだけではプログラムを書けるようにはなりませんし,プログラムを書いてみて初めて,実は十分に理解できていなかったと気付くことがよくあります。しかもアルゴリズムは特定のプログラミング言語に依存しないので,一度身に付ければ,後でどんな言語を学ぶ場合でも役に立ちます。 1番目から6番目まではソートのアルゴリズム,7番目から9番目まではサーチのアルゴリズムです。一つひとつ

    定番アルゴリズムを徹底理解! - 今からでも遅くない!アルゴリズム入門:selfup
  • Complexification | プログラミング・アート

    "While engaged in the deepest trance of coding, all one needs to wish for is any kind of numerical or symbolic resource, and in a flash of lightning it is suddenly there, at your disposal." - John Maeda

  • 1