最大载干比算法
最大载干比(Max C/D)算法的基本思想是基站根据用户反馈的信道状态信息,依据用户的接收信号瞬时载干比值进行优先级排序,并按该优先级顺序选择用户,保证在任意时刻总是瞬时载干比值最好的用户得到服务。如果在某一时隙T内有K个用户需要进行数据服务,用户n的载干比值为∈(n),那么被服务的用户n'为n'=arg max ((n))。
n=1,2,…,K
这种调度方法可以有效利用系统资源,提升系统吞吐量,且实现方法简单。其缺点是没有考虑系统各用户间的公平性。在实际系统中使用这种调度算法时,某些信道条件较差的用户一直无法获得调度机会,造成用户“饿死”现象。
C语言代码:
#include<stdio.h>
int main()
{
int a[1000],b[1000],c[1000],d[1000];
int i,j,k,w,x,y;
int n,sd,flag=1;
printf("输入用户个数:\n");
scanf("%d",&n);
printf("输入用户载干比值:\n");
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
// for(j=0;j<n;j++)
// {
// printf("%d",a[j]);
// }
// printf("\n");
printf("输入用户需求长度:\n");
for(i=0;i<n;i++)
{
scanf("%d",&b[i]);
}
// for(j=0;j<n