タグ

2017年5月15日のブックマーク (6件)

  • スキップリスト - Wikipedia

    スキップリスト(英: skip list)は、平衡二分探索木と似た用途に使う乱択アルゴリズムのデータ構造。連結リストを並列に連結させて作る。比較により順序づけ可能な要素を挿入し、スキップリスト内ではソートされた状態で保持される。ソートされた連想配列や集合の実装などに使える。挿入と探索と削除は平均O(log n)である。1989年にウィリアム・ピューが発表した[1][2][3][4]。 スキップリストは順序つきの連結リストの前向きの飛び越しのリンクを追加したものである。ノードは幾何分布や負の二項分布にてランダムに高さを設定して追加され(高さ1が確率50%、高さ2が25%、高さ3が12.5%など)、リスト上の探索において連結リストの一部を高速に飛ばすことができる。 スキップリストの例。1〜10を追加し、ソートされた状態で保持されている。 スキップリストはリストの階層になっている。最下層は通常の

    iR3
    iR3 2017/05/15
    ふむふむ #sendagayarb で教わった
  • Understand Redis data types

    Overview of data types supported by Redis Redis is a data structure server. At its core, Redis provides a collection of native data types that help you solve a wide variety of problems, from caching to queuing to event processing. Below is a short description of each data type, with links to broader overviews and command references. Each overview includes a comprehensive tutorial with code samples

    iR3
    iR3 2017/05/15
    ふむふむ Matzの地位が学べる
  • 今更Redisのsorted set を知ってリアルタイムランキングの実装が超楽だった件 - Qiita

    最近ランキングを実装する機会があって、どうやって実装しようかって話をしていたら、@attakei さんがRedisのsorted set使うと楽よ!って教えてくれたので、使ってみたら超楽ちんでした 2年位前に流行ったんですね、知らんかった。 旧時代の実装 私がゲーム制作していた時代は、ランキングというと一定時間ごとにバッチを回して、ランキングテーブルにソート済みのデータを流しこむという感じの実装でした。 おかげで、ユーザー参照用とバッチ作業用の二つのランキングテーブルと、ランキングテーブルを切り替えるためのスイッチングテーブルが必要になったり、バッチ流す必要があったり、とにかく面倒くさかったように覚えています リアルタイムなんて、いちいち全ユーザーの集計をしてデータをソートして順位を割り出すことになり、そんなことは無理な話でした Redis の sorted set ところが、時代は変わる

    今更Redisのsorted set を知ってリアルタイムランキングの実装が超楽だった件 - Qiita
    iR3
    iR3 2017/05/15
    ふむふむ
  • Rubyでcase文を卒業してダックタイピングに入門する - Qiita

    この記事はRuby Advent Calendar 2016の19日目の記事です。 今回は、リファクタリング系のわりと初歩的な内容かなと思います。 常にこうした方がいいというわけではなく「こういう道もあるんだよ」という選択肢を持っていると、いつか役に立つかも。ぐらいのトピックです。 発想がHash 例えば以下のようなコードがあったとします。 def 料理する(foods) foods.each do |food| case food["type"] when "フルーツ" 皮をむく(food["name"]) 切る(food["name"]) when "野菜" 切る(food["name"]) 煮る(food["name"]) end end end foods = [ { type: "フルーツ", name: "みかん" }, { type: "野菜", name: "キャベツ" }

    Rubyでcase文を卒業してダックタイピングに入門する - Qiita
    iR3
    iR3 2017/05/15
    ふむふむ “つまりRubyはデータとロジックの分割が得意な言語だと、私はたどり着きました。” #sendagayarb で見てる
  • https://qiita.com/mzyy94/items/72089df3269eb6b4b1e1

    iR3
    iR3 2017/05/15
    ふむふむ
  • 北ミサイル 中国主席の顔に泥 | 2017/5/15(月) 11:17 - Yahoo!ニュース

    習氏の面目丸つぶれ、北ミサイル発射 「一帯一路」会議初日に強行 【北京=藤欣也、モスクワ=遠藤良介】北朝鮮が弾道ミサイルを発射した14日は、中国の習近平国家主席が自ら提唱した現代版シルクロード経済圏構想「一帯一路」に関する初の国際会議の開幕日に当たった。中国が今年最大の外交イベントとして入念に準備してきた会議であり、中国最高指導者はせっかくの“晴れ舞台”にけちをつけられる屈辱を味わう形となった。(産経新聞) [続きを読む]

    北ミサイル 中国主席の顔に泥 | 2017/5/15(月) 11:17 - Yahoo!ニュース
    iR3
    iR3 2017/05/15
    “中国最高指導者はせっかくの“晴れ舞台”にけちをつけられる屈辱を味わう形となった。” ふむふむ 軍事独裁政権の悪党同志で潰し合いをやるように誘導されるのが良いシナリオ