ArrayList和LinkList的描述,下面说法错误的是()。

题目
单选题
ArrayList和LinkList的描述,下面说法错误的是()。
A

LinkedeList和ArrayList都实现了List接口

B

ArrayList是可改变大小的数组,而LinkedList是双向链接串列

C

LinkedList不支持高效的随机元素访问

D

在LinkedList的中间插入或删除一个元素意味着这个列表中剩余的元素都会被移动;而在ArrayList的中间插入或删除一个元素的开销是固定的

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

欲构造ArrayList类的一个实例,此类继承了List接口,下列( )方法是正确的。

A.ArrayList myList=new Object();

B.List myList=new ArrayList();

C.ArrayList myList=new List();

D.List myList=new List();


正确答案:B

第2题:

阅读以下函数说明和C语言函数,将应填入(n)处的字句写在对应栏内。

[说明1]

L为一个带头结点的循环链表。函数LinkList deletenode(LinkList L,int c)的功能是删除L中数据域data的值大于C的所有结点,并由这些结点组建成一个新的带头结点的循环链表,其头指针作为函数的返回值。

[C函数1]

LinkList deletenode(LinkList L,int c)

{LinkList Lc,P,pre;

pre=L;

p=(1);

Lc=(LinkList)malloc(sizeof(Listnode));

Lc->next=Lc;

while(P!=L)

if(p->data>C){

(2);

(3);

Lc->next=p;

p=pre->next;

}

else{

pre=p;

p=pre->next;

}

return Lc;

}

[说明2]

递归函数dec_to_k_2(int n,int k)的功能是将十进制正整数n转换成k(2≤k≤9)进制数,并打印。

[C函数2]

dec to k 2(int n,int k)

{ if(n!=O){

dec to k 2( (4) ,k);

printf("%d", (5) );

}

}


正确答案:(1) pre->next或L->next (2) pre->neXt=p->next (3) p->next=Lc->next (4) n/k (5) n%k
(1) pre->next或L->next (2) pre->neXt=p->next (3) p->next=Lc->next (4) n/k (5) n%k 解析:函数1是考察链表的删除和插入的操作。(1)空所在语句是对指针P赋初值,应填“pre->next”或“L->next”,通过下面的程序可以判断指针pre所指的结点是指针p所指结点前驱结点。(2)、(3)空所在的语句块是处理当指针p所指的结点是一个大于C的结点,则将该结点从链表L中删除,再将它插入到链表Lc中。分别填“pre->next=p->next”和“p->next=-Lc->next”。
函数2是一个递归函数,采用除k取余法。最开始得到余数作为k进制数的最低位,最后得到的余数作为k进制数的最高位。用递归法求解时,先将n/k转换成k进制,再输出n%k。因此(4)填“n/k”,(5)填“n%k”。

第3题:

欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的?( B )

A.ArrayList myList=new Object();

B.List myList=new ArrayList();

C.ArrayList myList=new List();

D.List myList=new List();


参考答案:B

第4题:

下面关于旋转因子的描述中,错误的是( )。



答案:B
解析:

第5题:

欲构造ArrayList类的一个实例,此类继承了List接口,下列( )是正确的。

A.ArrayListmyList=new Object();

B.List myList=new ArrayList();

C.ArrayList myList=new List();

D.List myList=new List();


正确答案:A

第6题:

在C语言中,可以用typedef声明新的类型名来代替已有的类型名,比如有学生链表结点: typedef struct node{ int data; struct node * link; }NODE, * LinkList; 下述说法正确的是______。

A.NODE是结构体struct node的别名

B.* LinkList也是结构体struct node的别名

C.LinkList也是结构体struct node的别名

D.LinkList等价于node*


正确答案:A
解析:其实题中的定义相当于下述两个定义:typedefstructnode{intdata;structnode*link;}NODE;typedefstructnode{intdata;structnode*link;)*LinkList;前者给structnode取了个新名字NODE,即structnode和NODE是等价的;后者把structnode*命名为LinkList。

第7题:

Talk about the difference between LinkList, ArrayList and Victor.


正确答案:
           

第8题:

欲构造ArrayList类的一个实例,此类实现List接口,下列方法正确的是______。

A.ArrayList myList=new Object( );

B.List myList=new ArrayList( );

C.ArrayList myList=new List( );

D.List myList=new List( );


正确答案:B
解析: 不能直接建立接口的实例,只能通过实现接口的相应的类来实现接口。所以只有B选项是正确的。

第9题:

ArrayList和Vector的区别,HashMap和Hashtable的区别


正确答案:

 

就ArrayList与Vector主要从二方面来说.
一.同步性:Vector是线程安全的,也就是说是同步的,而ArrayList是线程序不安全的,不是同步的
二.数据增长:当需要增长时,Vector默认增长为原来一培,而ArrayList却是原来的一半
就HashMap与HashTable主要从三方面来说。
一.历史原因:Hashtable是基于陈旧的Dictionary类的,HashMap是Java 1.2引进的Map接口的一个实现
二.同步性:Hashtable是线程安全的,也就是说是同步的,而HashMap是线程序不安全的,不是同步的
三.值:只有HashMap可以让你将空值作为一个表的条目的key或value

第10题:

断句符能出现的位置,说明说法是错误的? ()

  • A、 标题 
  • B、 描述1和描述2 
  • C、 标题、描述1和描述2 
  • D、 描述1

正确答案:B,C

更多相关问题