牛客网数据结构错题 标签: 数据结构牛客网 2017

时间:2022-09-13 23:49:32
  • 若连通网络的各边的权值均不相同,则依据Prim算法所构造的最小生成树是唯一的。
  • (1)静态链表既有顺序存储的优点,又有动态链表的优点。所以,它存取表中第i个元素的时间与i无关。
    (2)静态链表中能容纳的元素个数的最大数在表定义时就确定了,以后不能增加.
    (3)静态链表与动态链表在元素的插入、删除上类似,不需做元素的移动。
    以上错误的是()                                                                                                         B。(1)错,(2)(3)对。静态链表是用数组存储节点数据,模拟链表的实现,但是没有用到指针。每个数组节点包括两部分:data域和cursor(游标)域。data存储数据,cursor指明下个元素在数组中的下标。(1)存取第i个元素时,需要从头遍历到i-1和元素,由第i-1个节点的cursor,才能知道第i个元素存储的位置,因此和i是相关的。(2)使用数组对元素进行存储,在定义时大小已经确定。(3)插入和删除操作无需移动元素,只需要修改cursor游标的值即可,就像修改动态链表中的指针一样。
  • 已知有一个关键字序列:(19,14,23,1,68,20,84,27,55,11,10,79)散列存储在一个哈希表中,若散列函数为H(key)=key%7,并采用链地址法来解决冲突,则在等概率情况下查找成功的平均查找长度为()。答案:A
           这些关键字除以7取余后分别得到5,0,2,1,5,6,0,6,6,4,3,2存储结构如下
    位置--存储
    0-----14-84 //14查找1次,84需要查找2次,以下类似
    1-----1
    2-----23-79
    3-----10
    4-----11
    5-----19-68
    6-----20-27-55
    总查找次数为1+2+1+1+2+1+1+1+2+1+2+3=18
    总共有12的关键字
    平均查找次数为18/12=1.5
  • 要保证连通具有10个顶点的无向图,至少需要()条边。                                                                                                                                         要保证连通具有10个顶点的无向图,重点是需要保证连通,则需要前面9个顶点两两相连,就能保证第10个顶点加入一条边就能保证连通。即:从9个节点中人任意选取两个节点连接,则需要C(9,2)条边,再加上最后一条边,则总边数为: C(9,2)+1=(9*8)/(1*2)+1=37
  • 二叉排序中序遍历一定是有序的。
  • http://blog.csdn.net/zhanghaotian2011/article/details/8459281      平衡二叉树。
  • 栈是先进后出的数据结构,在整个过程中,栈底指针不变,入栈与出栈操作均由栈顶指针的变化来操作。


  • 1、int(*p)[4];------ptr为指向含4个元素的一维整形数组的指针变量(是指针)2、int *p[4];-------定义指针数组p,它由4个指向整型数据的指针元素组成(是数组)3、int(*)[4];--------实际上可以看作是一种数据类型。也就是第一个(int(*p)[4];)
  • 1、int(*p)[4];------ptr为指向含4个元素的一维整形数组的指针变量(是指针)2、int *p[4];-------定义指针数组p,它由4个指向整型数据的指针元素组成(是数组)3、int(*)[4];--------实际上可以看作是一种数据类型。也就是第一个(int(*p)[4];)
    A,图的深度遍历是沿着一条路径走到头,然后再换另一条路径      图的广度遍历可以理解为层次遍历,按每层进行遍历,直到所有的点都被遍历完成      G是邻接表,然后根据深度遍历可以画出拓扑图,根据拓扑图可以得到其广度优先遍历
1、int(*p)[4];------ptr为指向含4个元素的一维整形数组的指针变量(是指针)2、int *p[4];-------定义指针数组p,它由4个指向整型数据的指针元素组成(是数组)3、int(*)[4];--------实际上可以看作是一种数据类型。也就是第一个(int(*p)[4];)