7人围坐一起,站起来重新排列,相邻两个人不能在做一起? C# 编程实现

来源:百度知道 编辑:UC知道 时间:2024/09/28 17:56:05
7人围坐一起,站起来重新排列,相邻两个人不能在做一起? C# 编程实现,哪位仁兄有高见啊?

0分也想要算法代码~~!
只能给你思路,你自己写去!
1.给出7个人的编号:1234567 7个不重复的数字
2.随机抽出7个数中的一个
3.把抽取的数和最后一个数交换位置,即:如果随机到4,则4与7交换位置,得到1237564
4.随机抽取前6个数中的一个,如果抽到编号为上一个编号的前面或者后面的数则重新执行这一步。例如:这一次随机到3和5,则重新随机,假如随机到2
5.把这一次随机到的数与第六个数交换。得到:1637524
继续循环随机,直到最后一位,如果不符合要求,重新做一次。

这年头,0分问题都有这么难的算法问题。。。
首先编号 1234567,
然后重新排列1357246
如果要继续的话,那就对1357246重新编号成1234567,然后再重新排列成1357246
要程序实现的话,还得结合具体的要求。

感觉自己有点硬编码
就不拿出来丢人现眼了