{"title":" Wavelet Tree","height":"190","image_url":null,"blog_title":"naoya\u306e\u306f\u3066\u306a\u30c0\u30a4\u30a2\u30ea\u30fc","provider_url":"https://hatena.blog","author_url":"https://blog.hatena.ne.jp/naoya/","blog_url":"https://naoya-2.hatenadiary.org/","published":"2008-11-16 22:11:10","type":"rich","categories":[],"html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fnaoya-2.hatenadiary.org%2Fentry%2F20081116%2F1226841070\" title=\" Wavelet Tree - naoya\u306e\u306f\u3066\u306a\u30c0\u30a4\u30a2\u30ea\u30fc\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","version":"1.0","description":"\u5727\u7e2e\u5168\u6587\u7d22\u5f15\u306e\u5b9f\u88c5\u306a\u3069\u3067\u3057\u3070\u3057\u3070\u5229\u7528\u3055\u308c\u308b Rank/Select \u8f9e\u66f8\u3068\u547c\u3070\u308c\u308b\u30c7\u30fc\u30bf\u69cb\u9020\u304c\u3042\u308a\u307e\u3059\u3002\u8a73\u3057\u304f\u306f\u53c2\u8003\u6587\u732e\u3092\u53c2\u7167\u3057\u3066\u3044\u305f\u3060\u304f\u3068\u3057\u3066\u3001\u4eca\u56de\u306f\u4e00\u822c\u306e\u6587\u5b57\u5217\u306b\u5bfe\u3057\u3066\u52b9\u7387\u7684\u306b Rank/Select \u3092\u53ef\u80fd\u3068\u3059\u308b\u30c7\u30fc\u30bf\u69cb\u9020\u3067\u3042\u308b Wavelet Tree (\u30a6\u30a7\u30fc\u30d6\u30ec\u30c3\u30c8\u6728) \u306e\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u4f5c\u308a\u307e\u3057\u305f\u3002 http://github.com/naoya/perl-algorithm-wavelettree/tree/master my $wt = Algorithm::WaveletTree->new(\"abccbbabca\"); is $wt->rank(6, 'a'), 2; is $\u2026","url":"https://naoya-2.hatenadiary.org/entry/20081116/1226841070","provider_name":"Hatena Blog","author_name":"naoya","width":"100%"}