Skip to content

Instantly share code, notes, and snippets.

class Array
def bsearch(e, l = 0, u = length - 1)
if l <= u
m = (l + u)/2
e < self[m] ? u = m - 1 : l = m + 1
e == self[m] ? m : bsearch(e, l, u)
end
end
end
@ogijun
ogijun / d2j.rb
Last active November 26, 2024 09:16
require 'json'
def d2j(data)
case data
when Hash
if data.keys.length == 1 && %w[S N M L NULL BOOL].include?(data.keys.first)
key, value = data.first
case key
when 'S', 'N'
value.is_a?(String) && key == 'N' ? value.to_i : value