求一段递归算法。。。

不用具体的细节。。提供下大致的算法思路。。最好是python语言的。其他语言也ok。
传入的是一个被encode的string..我要去decode。然后还要去拆分。
可能被encode了多次。然后被拆分的每段,再去decode。最终要的结果。就是这个string一共能拆成多少段。每段被encode了几次。。
大家给给思路吧。。。

def recur(s):
    s = decode(s)
    de, sp, sl = 1, 0, []
    if "|" in s:
        ss = s.split("|")
        sp += len(ss) - 1
        processed = map(recur, ss)
        for part in processed:
            de += part[0]
            sp += part[1]
            sl += part[2]
        return (de, sp, sl)
    elif "%" in s:
        return recur(s)
    else:
        return (de, sp, [s])

思路就是照着图写

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-06-21
当然有的啊