ã¯ããã«ã大è¦æ¨¡ãªãã¼ã¿ãæ±ãã¢ããªã±ã¼ã·ã§ã³ã§ã¯ãé度ã¨ã¨ãã«ä½æ¥é åéã大ããªåé¡ã¨ãªãã¾ããä½æ¥é åãã¡ã¤ã³ã¡ã¢ãªã«åã¾ããªãå ´åãã¹ã¯ããã³ã°ãçºçãã大å¹
ãªé度ä½ä¸ã«ã¤ãªããã¾ãããã®ããè¿å¹´ããã¼ã¿æ§é ã¯é«éãªã ãã§ãªããä½æ¥é åéãå°ãããã¨ãæ±ãããã¦ãã¾ããä»åç´¹ä»ããã®ã¯2003å¹´ã«ææ¡ããããã¼ã¿æ§é ãwavelet treeï¼ä»¥ä¸ãWTãã¨è¡¨è¨ï¼ã§ããWTã¯å§ç¸®ç´¢å¼ãSuccinct Data Structureãªã©ããã¼ã¿ãã³ã³ãã¯ãã«è¡¨ç¾ããéã«éè¦ãªãã¼ã¿æ§é ã§ããWTã¯æååT[0...n-1]ãä¸ããããæã次ã®2ã¤ã®æä½ãå®æ°æéã§ãµãã¼ããã¾ããrank(p, c)ââT[0...p]ä¸ã®cã®åºç¾åæ°ãè¿ãselect(i, c)ââ(i+1)çªç®ã®cã®ä½ç½®ãè¿ã ãWTã®ä½æ¥é åéã¯ãæååããã®ã¾ã¾ä¿åããæã®ç´2åç¨åº¦ã§ãã対象èªè
ãC++ã®å©ç¨
{{#tags}}- {{label}}
{{/tags}}