导航菜单
首页 >  » 正文

数据结构选择题 数据结构试题

数据结构选择题

第一题,DFS(深度优先遍历)是一个递归算法,在遍历的过程中,先访问的点被压入栈底(栈是先进后出),再说:拓扑有序是指如果点U到点V有一条弧,则在拓扑序列中U一定在V之前。深度优先算法搜索路径恰恰是一条弧,栈的输出是从最后一个被访问点开始输出,最后一个输出的点是第一个被访问的点。所以是逆的拓扑有序序列
第二题:无向图路径长度是指两个顶点之间弧的条数,如果两顶点路径长度有2条弧,则有3个顶点例如A——B——C;
第三题:A:极小连通图是一棵生成树,只有N-1条边,但是连通分量可能有N条边,例如极小连通图A—— B——C,连通分量“A”——B——C——“A”(这里的最后一个“A”跟第一个“A”一致):;
B:你查下极大强连通子图概念就明白了;
C:你看看第二题的例子就明白了,AC之间没有弧,但他们是一个拓扑序列;
D:例如:环形图就不满足,比如长方形,四个顶点,两种遍历都能访问到每个顶点,但不是完全图

数据结构试题

这是程序:
保存为 select.c 即可运行:

#include<stdio.h>
#define max 7

void select(int arr[],int len)
{
int i=0,j=0;
for(i=0;i<len;i )
{ int temp=arr[i];
int xuhao=i;
for (j=i 1;j<len;j )
{
if (arr[j]<temp)
{ temp=arr[j];
xuhao=j;
}
}
arr[xuhao]=arr[i];
arr[i]=temp;
}
}
void print_out(int arr[],int len)
{
int i=0;
printf("排序后的结果是 ");
for (i=0;i<len;i )
{ printf("%d ",arr[i]);
}
printf(" ");
}
void main()
{
int arr[max]={17,23,60,48,11,73,34};
select(arr,max);
print_out(arr,max);
}

数据结构试题求解

1 错。给的条件能确定链表含1个元素,而非空。
2 错。
3 错。M阶B树要求(叶上)至少M/2个元素,上面所谓的叶就是倒数第二层了,而三阶平衡树最底层可以有1个元素。
1. 下面程序段时间复杂度为________
for (int i=0;ifor (int j=0;jS =i;

O(n*k)
2 数据结构的存储结构包括顺序,________,索引和散列四种。

链接
3.设森林T中有三棵树,第一,二,三棵树的结点个数分别为n1,n2,n3,将森林转换成二叉树后,其根结点的左子树上有________个结点。

n1-1。
森林转为二叉树之后,原第一棵树T1的根节点将成为二叉树Tn的根节点,其余的采取貌似于长兄如父的方式排列,原先是父子关系的还是步子,但是原先是兄弟的也变成了父子,对于其他树的根节点的有分支,会分到左分支的另一派左分支上。所以是n1-1

4.对二叉搜索树进行________遍历,可以得到按关键字从小到大排列的结点序列。

中序
二叉搜索树为了搜索的方便,根节点大于左边的,小于右边的。所以中序遍历才会得到所要序列
三.选择题
1.已知单链表A长度为m,单链表B长度为n,若将B联接在A的末尾,其时间复杂度应为________。
A. O(1) B. O(m) C. O(n) D.O(m n)

B。步进m次(即O(m))以达到其尾节点,然后将该节点的next指向B。如果给定了条件是链表既存有头,又存有尾,那么就是o(1).这里选B。

2.设有一个递归算法如下:
int fact(int n) { //n大于等于0
if(n<=0) return 1;
else return n*fact(n-1);
}
则计算fact(n)需要调用该函数的次数为________次。
A. n B. n 1 C. n 2 D.n-1

B

可乐答的不错。可以保证。我做的结果一样。

数据结构考题

答案保证正确,
1、在双向循环链表的p所指结点之后插入s所指结点的操作是(D)。
Ap->right=s;s->left=p;p->right->left=s;s->right=p->right;
Bp->right=s;p->right->left=s;s->left=p;s->right=p->right;
Cs->left=p;s->right=p->right;p->right=s;p->right->left=s;
Ds->left=p;s->right=p->right;p->right->left=s;p->right=s;

2、二维数组A中,每个元素的长度为3个字节,行下标i从0到7,列下标j从0到9,从首地址SA开始连续存放在存储器内,存放该数组至少需要的字节数是(C)。
A80
B100
C240
D270

3、在一个单链表中,若删除p所指结点的后续结点,则执行(A)。
Ap->next=p->next->next;
Bp=p->next;p->next=p->next->next;
Cp->next=p->next;
Dp=p->next->next;

4、数据结构DS(Data Struct)可以被形式地定义为DS=(D,R),其中D是(B)有限集合,R是D上的关系有限集合。
A算法
B数据元素
C数据操作
D数据对象

5、不带头结点的单链表head为空的判定条件是(A)。
Ahead= =NULL
Bhead->next= =NULL
Chead->next= =head
Dhead!=NULL

数据结构的题目!!

List 假设有两个集合A和B分别用两个线性表LA和LB表示(即:线性表中的数据元素即为 ... List Lb) // 已知线性表Lb 中的数据元素依值非递减有序排列(Lb 是有序表), // 构造线 ... 归并La 和Lb 得到新的线性表Lc

相关推荐: