小编Har*_*Ali的帖子

Ruby String编码连续的字母频率

我想在Ruby中编码一个字符串,使输出成对,以便我可以解码它.我想以这样的方式编码:每对包含字符串中的下一个不同的字母,并且连续重复的数字.

例如,如果我编码"aaabbcbbaaa"输出应该[["a",3],["b",2],["c",1],["b",2],["a",3]]

这是代码.

def encode( s )
    b = 0
    e = s.length - 1
    ret = [] 
    while ( s <= e )
        m = s.match( /(\w)\1*/ )
        l = m[0][0]
        n = m[0].length
        ret << [l, n]
    end
    ret
end
Run Code Online (Sandbox Code Playgroud)

ruby

3
推荐指数
2
解决办法
862
查看次数

标签 统计

ruby ×1