讨论/算法和数据结构/求助大佬们关于随机排列的好算法/
求助大佬们关于随机排列的好算法

首先开发工具是python3哦
这边需要将几个元素随机排列到一个8x7的列表里,原则上平均分配 如有20个元素会每个元素排列两次,再随机抽取16个元素进行排序,其中排序需要满足一些特定的规则
这边用 20个元素复制一次,再将多余的16个元素再次添加进一个56个元素的bigList列表
在while循环中用random.shuffle函数将bigList打乱再按下标依次插入 插入完成后按照规则进行条件判断,若不满足条件则重新shuffle再插入直至满足条件。这样一来时间复杂性太高了,元素为14个时需要3-4秒完成判断,11个时甚至长时间运算不出结果(因为元素越少满足规则的排列越少)
有没有大佬有好一点的算法提供,本人编程小白,卡了一个星期了想不好方法。
规则是相同的元素不能排在List的同一列List是8X7的列表,为最后的输出结果

PS:有没有机智的小伙伴知道这个功能是干什么的😄

展开讨论
薛定谔的珠穆朗玛峰发起于 2020-04-17
最近编辑于 2020-04-17

不是,到底要满足什么规则啊

展开全部 5 讨论