タグ

関連タグで絞り込む (241)

タグの絞り込みを解除

algorithmとAlgorithmに関するclavierのブックマーク (353)

  • iTunes11のアルバム情報表示に使われるオシャレアルゴリズムを考える | fladdict

    iTunes11がリリースされましたね。賛否両論を呼びそうな大変更。 このiTunes11、アルバム選択時の情報画面がもの凄く凝ってる。なんとアルバムジャケットにあわせて情報の色が変化するんよ!! 何これオシャレ! どういうアルゴリズムになっているのか、とっても気になる。 仮定としては、 ジャケットを16〜32色程度で減色、パレット抽出する。 四辺のエッジに含まれる色から、最多ピクセル色を背景に採用。 残りの色の中で、背景色と一定距離(RGB or 色相)がある最多ピクセル色を文字色1として採用。 残りの色の中で、背景色と一定距離(RGB or 色相)がある最多ピクセル色を文字色2として採用。 どうしても適切な色がない場合、白か黒を文字色に採用。 アルバムの四隅に対し、背景色でインナーシャドーをかける という感じかなと。多分これであってる。 アルゴリズムで文脈にあった綺麗な配色を作るってい

  • 汎用ソート殺し - d.y.d.

    00:26 12/12/18 BookLive! 7月に出会ってからずっと電子書籍ストアとして BookLive! をひいきにしているのですが、一体どこが好きなのか語りたくなりました。 ITMedia の これでもう迷わない、電子書店完全ガイド という一連の記事の、 電子書籍の端末の話よりストアの話をしましょうよというコンセプトに思いっきり影響されています。 といっても、第一印象が「普通のことが普通にできるので感激した!!」というもので、 つまり今年の前半に使っていた幾つかの電子書籍ストア/専用アプリが残念だっただけかもしれません。 買ったがどこをクリックすれば読めるのか理解するのに10分かかった、とか、 6冊以上買うと棚アプリから画面外にがはみ出るので手でいちいち棚を変えて整理しないと読めない、とか。 当に普通に使えるという以上に特筆することもないんですが、 あ、でも、今年になる

  • へ、変態っ!!読めないからやめてっ!bit使ったデータ構造・アルゴリズム実装集 - Negative/Positive Thinking

    この記事はCompetitive Programming Advent Calendar Div2012の2日目の記事です。 12月20日追記: Darseinさんが20日目の記事で、ビット演算についての詳しい説明を紹介してくださっています!必読ですね!!!!:) はじめに Y^´       ∨// /,∠ ,. ' /l/// /, ' , '/ ! | l }´     〈 〉    変  〈/ , ' // ̄`>< /// /// _,.=‐|'"´l l〈  変  / 〈    態.   ∨, '/l|   ,.'-‐、`//`7/  /''"´__ | ハ l丿  態   { 人)   ! !   (/!  |ヽ〈_ ・.ノ〃  〃 /  '/⌒ヾ.! ,' !く   ! !  (_ ト、__/   ヽ、_,.イ    /l l |:::::::```/:::::/...´..

    へ、変態っ!!読めないからやめてっ!bit使ったデータ構造・アルゴリズム実装集 - Negative/Positive Thinking
  • PHP5.4.8までにhashdos攻撃の危険性?

    徳丸 浩 @ockeghem PHP5.4.9リリース…『max_input_vars doesn't filter variables when mbstring.encoding_translation = On』←げっ、こんなバグがあったのか(要確認) http://t.co/K8iEBeg2 2012-11-23 11:52:34

    PHP5.4.8までにhashdos攻撃の危険性?
  • ELEKS Vacancies: Lviv, Ternopil, Kyiv, Ivano-Frankivsk

    We value your time, that is why you can get your offer, spending less than 2 hours on the interviews. 1Application Send your CV, apply via LinkedIn or contact us with a job application. Once we hear from you, our professional recruiter will follow you up via Skype or phone for a small talk. You will get more details about the vacancy, share your expectations, and if everything goes well, we’ll get

    ELEKS Vacancies: Lviv, Ternopil, Kyiv, Ivano-Frankivsk
  • なぜ Haskell ではキューが軽んじられているか? - あどけない話

    Haskell ではキューが欲しくなったら Data.Sequence を使えと言われる。Seq は両端キューだし、シーケンスとして使えば、連結(><)や分割(splitAt)が、ならし計算量で O(log N) という優れものである。しかし、内部がfinger treeなのでコードが複雑なのと、計算量が「ならし」なところが玉に傷である。 もっと単純で、最悪計算量を保証する(両端でない)キューが標準で提供されてもいい気がする。その候補には、リアルタイムキューがある。どうして標準でキューが提供されないのだろう? 僕なりの答えは「需要がない」だ。 問題を解くときにスタックはよく使うが、キューが必要な問題はそんなに思いつかない。僕はネットワーク屋なので、もちろんルータにはキューが必要なことは知っているが、それ以外で有名どころと言えば幅優先探索ぐらいだ。 幅優先探索 でも、Haskellではキュー

    なぜ Haskell ではキューが軽んじられているか? - あどけない話
  • 世界で闘うプログラミング力を鍛える150問 〜トップIT企業のプログラマになるための本〜 - iwiwiの日記

    先行発売のお知らせ (11/7 追記) 以下の店舗で先行発売が行われているらしいです. 紀伊國屋書店 新宿店 (https://twitter.com/KinoShinjuku/status/265658160222724096) 紀伊國屋書店 新宿南店 (https://twitter.com/kino_Minami/status/265405470548844546) ジュンク堂書店 池袋店 (https://twitter.com/junkudo_ike_pc/status/265677297430978562) 有隣堂 ヨドバシAKIBA店 (https://twitter.com/yurindo_akb/status/265648944745426945) 丸善 丸ノ内店 なお,電子書籍版の発売も予定しているそうですが,調整中とのことで少し後になりそうです. 原著は既に第5版

    世界で闘うプログラミング力を鍛える150問 〜トップIT企業のプログラマになるための本〜 - iwiwiの日記
  • Fibonacci Algorithm Benchmark

    SubjectNode.js is cancer (リンク先は素に削除さている、uu59さんによる和訳記事はこっち) でも言われてた「node.js でフィボナッチは遅い」。 この例はあくまでフィボナッチ関数がどうの、という話をする為ではないし、そもそもRyanが言うように Node.jsはスケーラブルなネットワークプログラムを簡単に書くための手段であって、レイトレーシングや、ウェブブラウザや、動画エンコーディングシステムをNode.jsで作ってはいけない。のであって、Suckな例として出すには藪蛇なものだったのだけれど。 それはそれとして、じゃあ実際フィボナッチ関数の実装アルゴリズムは複数あるけれど、実際どれくらいの差が出るのかベンチマークとってみました。 HowHardware/OSMacBook 2009 (2.26GHz Intel Core 2 Duo) Mac OS X - 1

  • Python:回帰分析 : 分析技術とビジネスインテリジェンス

    今回はPythonによる回帰分析(OLS:Ordinary Least Squares)の実施方法をまとめる。 まずは最小2乗法に基づく重回帰式の作成と結果表示方法を取り上げる。 ライブラリの使い分けについては調査のしやすさを優先しているが、回帰分析については統計モデルはOrange、予測モデルはscikit-learnでやろうかなと考えている。 来はすべてを統一したいが、後者ライブラリは回帰分析の結果表示で、p値や偏回帰係数の出力が無いようだし、ステップワイズの実施方法も見当たらなかった。しかし、予測モデルとなれば、その精度と堅牢性を高めることが目的となり、p値などに言及しなくても説明責任は果たせるので、逆にscikit-learnのシンプルさが生かせると思っている。 ■ライブラリ >>> import Orange >>> from padnas import * ■データ >>>

  • Haskellの配列でクイックソート - あどけない話

    Haskell の クイックソート としては、以下のようなコードがよく例に出てきます。 quickSortList :: [a] -> [a] quickSortList [] = [] quickSortList (x:xs) = quickSortList lt ++ [x] ++ quickSortList gt where lt = filter (<x) xs gt = filter (>=x) xs これは、小さなリストを何度も連結するので、効率が悪そうです。 そこで、一旦配列に直し、固定領域を使ってソートして、またリストに戻す方がいいのではないかと思い、実装して速度を比べてみました。配列を使うクイックソートのコードは、「珠玉のプログラミング」から拝借しました。ベンチマークも含むコードは、gist に上げています。 結果はこんな感じ(単位はms): 入力のサイズ 10^4 10

    Haskellの配列でクイックソート - あどけない話
  • 3ウェイマージというマージアルゴリズム - プログラマの思索

    分散バージョン管理のマージコマンドが優れているのは、3ウェイマージが使われているのではないか、と思った。 3ウェイマージに関する記事をメモ。 【元ネタ】 変更をマージする ? Bazaar v2.6.0dev2 documentation JapaneseTutorialConflict - Mercurial マージ (バージョン管理システム) - Wikipedia 競合の編集~TortoiseMerge 第3章 TortoiseMergeの使い方 Mercurial 2.0?: graft: 3-way マージアルゴリズムを使った cherry-picking - tcha.org 分散バージョン管理はバージョンではなくリビジョンを管理する: プログラマの思索 SVNからMercurialに移行するべき8つの理由: ニュースの社会科学的な裏側 (引用開始) SVNのブランチの様にTr

    3ウェイマージというマージアルゴリズム - プログラマの思索
  • プログラミングコンテストでのデータ構造 2 ~平衡二分探索木編~

    安尾 萌, 北村 茂生, 松下 光範. 災害発生時における被害状況把握を目的とした情報共有システムの基礎検討, 電子情報通信学会HCGシンポジウム2018...

    プログラミングコンテストでのデータ構造 2 ~平衡二分探索木編~
  • モバイルゲームの歴史を年代別にご紹介します。モバイルゲームの成長と今後について詳しく解説していきます。

    モバイルゲーム 物凄い勢いで勃興したモバイルゲーム業界は、いろいろな課題や問題に直面しながらも巨大化し、今日の時点でのスマートフォン向けゲームの市場へと継承されていきます。 モバイルゲーム歴史 2001 Javaアプリと3Dゲームの登場 Javaが利用できるようになったことにより、ダウンロード型のゲームが供給できるようになりました。 2002 携帯電話端末の大容量化・3D化競争 Java搭載携帯電話端末が登場してからごく僅か1年の間に、アプリのサイズに関しては10倍に広大化し、表現方法も2Dから3Dにシフトし始めました。J-PHONEは『ゼビウス』や『スペースハリアー』などといった昔のアーケードゲームを、ドコモはSIMCITYなどパソコンで世界的規模のヒットを飛ばしたゲームを主力商品としていました。 2003 モバイルゲームの一般化 メモリの制限が厳しいJava仮想マシン上ではなく、OS

  • Tumblr

    「JPEG Tilt」というページを公開しました。MotionJPEG Builder を作った時に、JPEG のヘッダを読み込む処理を作ったので(結局これは使わなかったんですが)圧縮データの読み込み部分も作ってみようか、という気になって作ったのがこれです。JPEG ファイルで画像が圧縮される様子を視覚的に表現する…… という目標だったのですが、どうでしょうか。まあ内容が内容なので説明無しではさすがに意味が分からないと思います。 ということで、JPEG Tilt の見方を以下で簡単に説明します。 図1は、JPEG Tilt の画面です。画像が iTunes の CoverFlow のように並んでいますが、これの左側は画像の低周波成分のみを抜き出した物で、右に行くとより高周波の成分も含めるように並んでいます(低周波、高周波という言葉の意味はこの先で出てきます) 画像の上にマウスカーソルを乗せ

    Tumblr
  • 情報系修士にもわかるLOUDS - アスペ日記

    一回でわかりやすく書くのは難しいので、簡潔データ構造 LOUDS の解説(全12回、練習問題付き)というシリーズにまとめました。 (2014/01/26) 古い内容を削除しました。

    情報系修士にもわかるLOUDS - アスペ日記
  • MapReduceのパターン、アルゴリズム、そしてユースケース - きしだのHatena

    Ilya Katsov氏による「MapReduce Patterns, Algorithms, and Use Cases」の翻訳 http://highlyscalable.wordpress.com/2012/02/01/mapreduce-patterns/ (下書きに入れて推敲するつもりが、なんか公開されてしまっていたので、あとでいろいろ修正すると思います) February 1, 2012 この記事では、Webや科学論文で見られる異なるテクニックの体系的な視点を与えるために、数々のMapReduceパターンとアルゴリズムをまとめた。 いくつかの実用的なケーススタディも提供している。 すべての説明とコードスニペットでは、Mapper、Reducer、Combiner、Partitionaer、ソーティングにおいてHadoopの標準的なMapReduceモデルを利用します。このフレー

    MapReduceのパターン、アルゴリズム、そしてユースケース - きしだのHatena
  • d.y.d.

    20:25 12/02/10 TLE 2k12 優勝しました。 TLE とは何かというと、毎年この時期に、インドの IIIT-H 大学 の学祭の一環として(たぶん)開催されてるC言語ショートコーディングコンテストです。 過去の感想 → '09, '10, '11。 コードというのは時間をかけて睨んでいればいつの間にか短くなるものなので、 平日で忙しそうなライバル達を横目に代休とって丸一日コードを睨む、 という富豪的作戦が功を奏しました。 ⇒ 提出したソースコード 問題はまだオープンになってないようですが、だいたいこんなの。例年とあまり変化なかった(ので少し拍子抜け)。 BST: 二分探索木に指定の入力値列を突っ込んだ最終状態を表示する COMPOSITE: 自分自身のソースコードのうち素数じゃない位置にある文字だけ表示する変種Quine HASHING: 入力された文字列のバイト値の総和を

  • 情報系修士にもわかるダブル配列 - アスペ日記

    最近話題の「日本語入力を支える技術」を途中まで読んだ。 3章がものすごく気合いが入っている。 trie(トライ)というデータ構造の2つの実装、「ダブル配列」と「LOUDS」について詳しく説明がされている。 ダブル配列については、ぼくは以前論文を読んで勉強しようとしたのだが、その時は難しくてあきらめた覚えがある。しかし、このの説明を読むことで理解ができた。 ありがたい。 感銘を受けたので、このを教材に友達と2人勉強会をした。 この2人勉強会というのは、ぼくが復習を兼ねて友達に教えるというのがだいたいのスタイル。 しかし、いざやってみるといろいろと難しい。 次のようなところでひっかかるようだ。 例のサイズが小さく、イメージを喚起するのが難しい。 最初の図のノード番号と、最終的なダブル配列上の位置が異なるため、混乱する。 単語終端について言及がないので、どのノードが単語を表しているかがわから

    情報系修士にもわかるダブル配列 - アスペ日記
  • Tree Edit Distanceと自然言語処理への応用 - Preferred Networks Research & Development

    海野です。ちょっと時間があいてしまいましたが、昨年の12月に開催されたNTCIR-9という会議のRecognizing Inference in TExt (RITE)というタスクに、前職の方々と共著で出場しました。 Syntactic Difference Based Approach for NTCIR-9 RITE Task. Yuta Tsuboi, Hiroshi Kanayama, Masaki Ohno and Yuya Unno. NTCIR-9, 2011. [pdf] 含意関係認識といわれるこのタスクは、大雑把に言うと与えられた2つの文が同じ意味のことを言っているかどうか判定しなさいというタスクです(厳密には一方からもう一方が帰結できるかの判定です)。今日は、その中で使ったTree Edit Distance (TED) について解説します。 TEDは2つの順序付き木が

  • IBM Developer

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    IBM Developer