以上为根据字符串,找到它所在的字典序.
以上为根据字典序,恢复字符串.
思想:
有重集合的全排列公式: (n1+n2+n3....nk)!
--------------------
n1!n2!n3!....nk!
k表示一共有几种字符,n1,n2,...nk 表示每种字符的数量.
通过这个公式可以计算出排列数,对于无重集合一样适用.
两个算法都是围绕这个公式与一种逐位考虑的思想,从字符串第一位,一位一位的确定,利用递归解决的问题.
具体思想不描述了,见算法竞赛入门经典P186页.