有三组数A,B,C,每组的个数分别为2,3,4. 元素分别为1 2;3 4 5 ;6 7 8 9; 现需要生成所有的排列,其中有三组数A,B,C,每组的个数分别为2,3,4.元素分别为1 2;3 4 5 ;6 7 8 9;现需要生成所有的排列,其
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/16 07:39:29
有三组数A,B,C,每组的个数分别为2,3,4. 元素分别为1 2;3 4 5 ;6 7 8 9; 现需要生成所有的排列,其中有三组数A,B,C,每组的个数分别为2,3,4.元素分别为1 2;3 4 5 ;6 7 8 9;现需要生成所有的排列,其
有三组数A,B,C,每组的个数分别为2,3,4. 元素分别为1 2;3 4 5 ;6 7 8 9; 现需要生成所有的排列,其中
有三组数A,B,C,每组的个数分别为2,3,4.
元素分别为1 2;3 4 5 ;6 7 8 9;
现需要生成所有的排列,其中中组间元素交换视为有效.例如 12 345 6789 -》12 346 5789视为有效的变换(其中B组元素5和C组元素6交换),组内元素的全排列视为无效(例如12 345 6789-》21 345 6789视为无效变换.如果从1-9的元素坐全排列的话需要计算和移动将近400万次(计算需要花费10多分钟).而其实实际有效的数据只有1260次,所以各位不知道有什么好多办法解决这个问题没有?
有三组数A,B,C,每组的个数分别为2,3,4. 元素分别为1 2;3 4 5 ;6 7 8 9; 现需要生成所有的排列,其中有三组数A,B,C,每组的个数分别为2,3,4.元素分别为1 2;3 4 5 ;6 7 8 9;现需要生成所有的排列,其
1,2;可变为12,21存在A不变:
3与6789中任一交换后做全排列,再4交换,再5交换;再34,45,35与6789任两个交换后全排列;再345与6789任三个交换后全排列后可得次数=2×(12×6×24+18×6×24+4×6×24)
345;可同上全排列存于B不变:
1与6789中任一交换后全排列,再2交换;再12与6789中任两个交换后全排列后可得次数=6×(8×2×24+6×2×24)
6789;全排列存于C中不变:
同上交换后全排列可得次数=24×(6×2×6+3×2×6)
算得的数字好像和你的不一样(可能还有其他要求)(每秒几亿次的速度还要10分钟)