タグ

2015年11月9日のブックマーク (4件)

  • とても長い配列の上位M件だけをクイックソートより高速に取り出す - Qiita

    というわけで、10倍の差がでた。 当然、配列の長さやソートする長さ、また実装の方法によって性能差は変わってくるが 今回の方法は有効であるということは確認できた。 既存の記事(2015/11/09 20:22 追記) コメント欄でUnordered partial sorting にそれらしきことが書いてあると教えていただいた。 そちらでは、「上位k個を取り出す(ソートは不要)」という問題を考えている。 同様に分割統治法を用いてソートしていきながら、上位k個以内の小区間になったらその区間はソートせずに全て選択して良いとしている。 早い話が、QuickSelectによりk+1番目の要素を探してそれより上位の要素をごそっと抜き出している。 分割統治法で大雑把にソートしていきながら、不要なソートを行わないようにする という同様のアプローチである。 C++のSTLの場合(2015/11/09 22:

    とても長い配列の上位M件だけをクイックソートより高速に取り出す - Qiita
  • 世界に爆速で広まるビジネスチャット「Slack」の正体

    2015年4月、スタートアップ界に流れたニュースは衝撃的だった。「Slackが評価額28億ドルで、1億6000万ドルを調達」。およそ1年半前にサービスローンチしたSlackは世界中で急速に普及しているビジネスチャットツールで、メールに取って代わる存在になると予想されている。短期間で、これだけ急成長するサービスはシリコンバレーでも数少ない。Slackの急成長の理由や今後の展開について、共同創業者でCTOのHenderson氏にインタビューした。 メールをレガシーに追いやる ―Slackはメールに取って代わるコミュニケーションツールだと言われていますね。どんな点が優れているんですか。 Slackはオンラインのビジネスチャットツール。社内で簡単にメッセージやファイルのやり取りができ、チームの生産性を高めます。メールとの違いをいくつか挙げると、まずリアルタイムかつ簡単にコミュニケーションできる点。

    世界に爆速で広まるビジネスチャット「Slack」の正体
  • Let's Encrypt を支える ACME プロトコル - Block Rockin’ Codes

    Intro 先日 #http2study で mozilla の Richard Barnes が Let's Encrypt について話してくれました。 資料: Let's Encrypt Overview この資料の翻訳 はしたのですが、いらなくなってしまったので供養もかねてこのプロジェクトのモチベーションと、 Web でおこっている HTTPS 推進のたどる道について、資料を補足しつつ紹介します。 結論から言うと Let's Encrypt はもちろん ACME プロトコル についても是非知っておくと良いと思います。 HTTPS の問題 すでにこのブログでも紹介しているように、 Web における HTTPS の重要性は増し、それの普及を後押しする活動が各所で進められています。 HTTPS 化する Web をどう考えるか よく言われる盗聴防止を始め、暗号化を行うことで防げる問題は多くあ

    Let's Encrypt を支える ACME プロトコル - Block Rockin’ Codes
    masa0x80
    masa0x80 2015/11/09
  • gitとプルリクエストに関して思うことまとめ - Qiita

    ※この記事は元々「Gitのこれやめて!リスト」として2015年11月に投稿したものを改訂したものです。 この記事について 私が個人的にgitとプルリクエストについて、「こうして欲しい」とか「これはやらないで!!」とか思っていることをまとめたものです。 元々は2015年に私がコードレビューをしてる時に気になったことを、あまり推敲もせず思うがままに書いた記事でした。今改めて読み返すと稚拙な文章なのと、他に思うところとがあったりしたので、改めて書き直しました。いいね貰ってるのに書き直すのに若干後ろめたさがあるのですが、よりいい内容にできればと思います。 コミットログがきれいだとレビューしやすい 一人で開発するときはgit使っててもブランチ切らないし、プルリクもださないしで、コミットログも"First Commit"の次が"Second Commit"とかでも支障はないです。しかし、チームで開発す

    gitとプルリクエストに関して思うことまとめ - Qiita
    masa0x80
    masa0x80 2015/11/09