我一直感兴趣的算法,分类,加密,二叉树,数据压缩,存储操作等帮助置换算法的一个特例(不是一般的)
,我读过马克·纳尔逊的约排列文章在C++中使用STL函数next_perm(),非常有趣且有用,之后我编写了一个类方法来获得Delphi中的下一个排列,因为这是我目前最常用的工具。这个函数适用于字典顺序,我从另一个主题的答案中得到了算法思路,但现在我遇到了一个很大的问题。我正在用向量中的重复元素进行排列组合,并且有很多我不需要的排列组合。例如,我有在词素文字顺序7层的元件这个第一置换:
6667778(连续6 = 3倍,7 = 3连续次)
对于我的工作我考虑有效烫发只有那些具有至多2元件连续地重复,例如:(连续6 = 2次,7 = 2连续次)
总之,我需要仅返回具有至多N个连续重复排列的功能,根据收到的参数。
有谁知道是否有一些算法已经这样做?
对不起,在文中的任何错误,我仍然不会说英语很好。
太感谢你了, 卡洛斯
作业?如果没有,请解释真实世界的任务最终需要这个,我很感兴趣:) – 2008-12-18 12:52:07
嗨,保罗。是一种功课,不是我老师提出的,而是在课堂上朋友间提出的挑战。 :D – 2008-12-18 13:32:07