タグ

2015年11月15日のブックマーク (3件)

  • JavaScript の Date は罠が多すぎる - Qiita

    JavaScript で日付・時間を扱っていて、次から次へと罠にはまったので、あとから来る人のために書き留めておく。 Date.parse が返すのは Date でなく整数 Date.parse は、世界協定時 1970 年 1 月 1 日 00:00:00 からの経過時間をミリ秒単位で返す。 Date を得るには new Date に渡す。 new Date に直接文字列渡しても同じ挙動なので、こちらのが簡潔。 msec = Date.parse("Thu, 06 Sep 2012 00:00:00 +0900"); // 1346857200000 date = new Date(msec); // Date date = new Date("Thu, 06 Sep 2012 00:00:00 +0900"); // Date

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

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

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

    Batteries includedCrystal’s standard library comes with a whole range of libraries that let you start working on your project right away. Check the API docs # A very basic HTTP server require "http/server" server = HTTP::Server.new do |context| context.response.content_type = "text/plain" context.response.print "Hello world, got #{context.request.path}!" end address = server.bind_tcp(8080) puts "L

    Crystal : The Crystal Programming Language
    non_117
    non_117 2015/11/15