用C语言递归算法求解循环日程安排问题的C语言伪代码
时间: 2023-06-04 13:06:48 浏览: 93
以下是C语言递归算法求解循环日程安排问题的伪代码:
```
void schedule(int k, int n, int v[])
{
// k表示当前是第几个会议,n表示总共有几个会议,v[]表示是否被占用
int i, j, ok;
if(k > n)
{
// 所有会议都已经安排完毕,输出方案
for(i=1; i<=n; i++)
{
printf("%d ", v[i]);
}
printf("\n");
}
else
{
for(i=1; i<=n; i++)
{
ok = 1;
for(j=1; j<=k-1; j++)
{
// 判断当前时间段是否与前面已安排的时间段冲突
if(v[j]==i || abs(v[j]-i)==k-j)
{
ok = 0;
break;
}
}
if(ok)
{
// 该时间段可用,递归处理下一个会议
v[k] = i;
schedule(k+1, n, v);
}
}
}
}
```
如果您有任何其他问题,都可以随时问我哦。
相关推荐
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)