相关试题
单选题 已知如下递归代码用于求解图的m着色问题:
#define N 10
int a[N+1][N+1]; //存储图
int x[N+1];//记录颜色
int sum=0;//保存可着色方案数
void backtrace(int t,int m)
{
int i;
if(t>N)//搜索至叶节点
{
sum++;
printf("第%d种方案:\n",sum);
for(i=1;i<=N;i++)
printf("%d ",x[i]);
printf("\n");
}
else
{
for(i=1;i<=m;i++) //逐个判断每种颜色
{
if(check(t,i))
{ x[t]=i;
backtrace(t+1,m);
}
}
}
} 其中check()函数用于检测某个节点颜色是否合法,以下check()函数正确的是:
单选题 下列说法中正确的是( )
单选题 下面关于动态规划说法正确的是
单选题 关键字序列为{12,11,19,23,1,6,10},哈希函数为H(key)=key MOD 11,用链地址法构造哈希表,哈希地址为1的链中有( )个记录( )
单选题 下列程序段的时间复杂度是( )
count = 1;
for(k=1;k<2n;k*=2)
for(i=1;i<4n;i+=2)
count++;
单选题 下列关于排序算法的描述错误的是
单选题 请指出以下代码段使用了何种算法
public void func(int[] arr1, int k, int m,int[] arr2) {
arr2[0] = 0;
for (int i = 1; i <= m; i++) {
int min = i;
for (int j = 0; j < k; j++) {
if (arr1[j] <= i) {
int temp = arr2[i - arr1[j]] + 1;
if (temp < min) {
min = temp;
}
}
}
arr2[i] = min;
}
}
单选题 一个线性序列(30,14,40,63,22,5),假定采用散列函数Hash(key)=key%7来计算散列地址,将其散列存储在A[0~6]中,采用链地址法解决冲突。若查找每个元素的概率相同,则查找成功的平均查找长度是( )。