有n个结点的线性表采用顺序表作为存储结构,要在第i(l≤i≤n+l)个位置插入一个新结点时,需要移动的结点个数为【】A.iB.n-iC.i-nD.n-i+l

题目

有n个结点的线性表采用顺序表作为存储结构,要在第i(l≤i≤n+l)个位置插入一个新结点时,需要移动的结点个数为【】

A.i

B.n-i

C.i-n

D.n-i+l


相似考题
更多“有n个结点的线性表采用顺序表作为存储结构,要在第i(l≤i≤n+l)个位置插入一个新结点时,需要移动的 ”相关问题
  • 第1题:

    在包含1000个元素的线性表中实现如下各运算,哪一个所需的执行时间最长?

    A)线性表按顺序方式存储,性表的第100个结点后面插入一个新结点

    B)线性表按链接方式存储,性表的第100个结点后面插入一个新结点

    C)线性表按顺序方式存储,删除线性表的第900个结点

    D)线性表按链接方式存储,删除指针P所指向的结点


    正确答案:A
    由于线性表采用的是顺序存储方式,用存储单元的邻接性体现线性表元素间的一维顺序关系,因此对线性表进行插入和删除运算时,可能需要移动大量的结点,以保持这种物理和逻辑的一致性。对于选项A),后面的900个结点都要往后移动,对于选项C),后面的100个结点都要往前移动。而对于线性表按链接方式存储,当进行插入与删除操作时,只改变相应的指针即可,所以比较4个选项的操作可易知,选项A)所需要的执行时间最长。 

  • 第2题:

    设有一个长度为n的顺序表,要在第i个元素之前(也就是插入元素作为新表的第i个元素),插入一个元素,则移动元素个数为()。

    A.n-i+1

    B.n-i-1

    C.n-i

    D.i


    参考答案:A

  • 第3题:

    在n个结点的顺序表中,算法的时间复杂度是O(1)的操作是()。A.访问第i个结点(1<=i<=n)和求第i个结点

    在n个结点的顺序表中,算法的时间复杂度是O(1)的操作是()。

    A.访问第i个结点(1<=i<=n)和求第i个结点的直接前驱(2<=i<=n)

    B.在第i个结点之后插入一个新结点(1<=i<=n)

    C.删除第i个结点(1<=i<=n)

    D.将n个结点从小到大排序


    正确答案:A

  • 第4题:

    一个长度为n的线性表,如果采用顺序存储结构,那么当删除第i个元素(l≤,i, ≤n)时, 需要向前移动的元素数量为( )。A.n-i+l B.n-i C.i D.n-i-1


    正确答案:B
    当删除第i个元素时,需要将后面n-i个元素都往前移一位

  • 第5题:

    设顺序表中结点个数为n,向第i个结点后面插入一个新结点,设向每个位置插入的概率相等,则在顺序表中插入一个新结点平均需要移动的结点个数为( )。

    A.(n-1)/2

    B.n/2

    C.n

    D.(n+1)/2


    正确答案:B
    解析:若顺序表中结点个数为n,且往每个位置插入的概率相等,则插入一个结点平均需要移动的结点个数为n/2。

  • 第6题:

    在包括1000个元素的线性表中实现如下各运算,哪一个所需要的执行时间最长?

    A.线性表按顺序方式存储,性表的第10个结点后面插入一个新结点

    B.线性表按链接方式存储,性表的第10个结点后面插入一个新结点

    C.线性表按J顷序方式存储,删除线性表的第990个结点

    D.线性表按链接方式存储,删除指针P所指向的结点


    正确答案:A
    解析:对于A,由于是在第10个结点后插入—个新结点,所以后面的990个数据都要向后移动;对于B,在链表中进行这个操作,只需从头结点开始找10次得到第10个结点,然后修改结点的指针即可;对于C,顺序表中删除第990个结点,需要向前移动最后10个结点;对于D,在链式方式下,删除一个结点,需要从头指针开始找,找到待删结点的前驱结点指针,这个查找次数和待删结点的序号是有关系的,平均值应该是500。通过上面的比较可以看出,本题正确答案为选项A。

  • 第7题:

    在包含1000个元素的线性表中实现如下各运算,______所需的执行时间最长。

    A.线性表按顺序方式存储,性表的第10个结点后面插入一个新结点

    B.线性表按链接方式存储,性表的第10个结点后面插入一个新结点

    C.线性表按顺序方式存储,删除线性表的第990个结点

    D.线性表按链接方式存储,删除指针P所指向的结点


    正确答案:A
    解析:本题考查点是线性表的基本操作。选项A:线性表按顺序方式存储,性表的第10个结点后面插入一个新结点,需要将第11个元素到第1000个元素依次向后移动一个位置,然后在第11个元素位置处插入新结点,因此要移动990个元素,插入一个元素。选项B:线性表按链接方式存储,性表的第10个结点后面插入一个新结点,只需要修改新结点的指针域和第10个结点的指针域就可以实现,无须移动元素。选项C:线性表按顺序方式存储,删除线性表的第990个结点,需要将第991个元素到第1000个元素依次向前移动一个位置,因此要移动10个元素。选项D:线性表按链接方式存储,删除指针P所指向的结点,只需要修改指针P所指向的指针域就可以实现,无须移动元素。因此,选项A所需的执行时间最长。

  • 第8题:

    在包括1000个元素的线性表中实现如下各运算,哪一个所需要的执行时间最长?( )

    A.线性表按顺序方式存储,性表的第10个结点后面插入一个新结点

    B.线性表按链接方式存储,性表的第10个结点后面插入一个新结点

    C.线性表按顺序方式存储,删除线性表的第990个结点

    D.线性表按链接方式存储,删除指针P所指向的结点


    正确答案:A

  • 第9题:

    若长度为n的线性表采用顺序存储结构,删除表的第i个元素之前需要移动表中n-i+1个元素。


    正确答案:错误

  • 第10题:

    在n个结点的顺序表中,算法的时间复杂度是O(1)的操作是()。

    • A、访问第i个结点(1≤i≤n)和求第i个结点的直接前驱(2≤i≤n)
    • B、在第i个结点后插入一个新结点(1≤i≤n)
    • C、删除第i个结点(1≤i≤n)
    • D、将n个结点从小到大排序

    正确答案:A

  • 第11题:

    在n个结点的线性表的数组实现中,算法的时间复杂度是O(1)的操作是()。

    • A、访问第i(1<=i<=n)个结点和求第i个结点的直接前驱(1<i<=n)
    • B、在第i(1<=i<=n)个结点后插入一个新结点
    • C、删除第i(1<=i<=n)个结点
    • D、以上都不对

    正确答案:A

  • 第12题:

    单选题
    已知一个线性储存的线性表设每个结点需要占n个存储单元,若第一个结点地址为xul,则第i个结点的地址为()。
    A

    xul+(i-1)*n

    B

    xul+i*n

    C

    xul-i*n

    D

    xul+(i+1)*n


    正确答案: A
    解析: 线性表中数据元素之间的关系是一对一的关系,即除了第一个和最后一个数据元素之外,其它数据元素都是首尾相接的。故第i个结点的地址就是A选项。

  • 第13题:

    在一个长度为n的顺序存储结构的线性表中,向第i个元素(1≤i≤n+1)位置插入一个元素时,需要从后向前依次后移()个元素。

    A、n-i

    B、n-i+l

    C、n-i-l

    D、i


    参考答案:B

  • 第14题:

    在线性表顺序存储结构下,在第i个元素之前插入新元素一般需要()

    :A移动元素

    B修改头指针

    C队头指针

    D申请新的结点空间


    参考答案:A

  • 第15题:

    在包含1000个元素的线性表中实现如下各运算,哪一个所需的执行时间最长?______

    A.线性表按顺序方式存储,性表的第10个结点后面插入一个新结点

    B.线性表按链接方式存储,性表的第l0个结点后面插入一个新结点

    C.线性表按顺序方式存储,删除线性表的第990个结点

    D.线性表按链接方式存储,删除指针P所指向的结点


    正确答案:A
    解析:本题考查点是线性表的基本操作。选项A:线性表按顺序方式存储,性表的第10个结点后面插入一个新结点,需要将第11个元素到第 1000个元素依次向后移动一个位置,然后在第11个元素位置处插入新结点,因此要移动990个元素,插入一个元素。选项B:线性表按链接方式存储,性表的第10个结点后面插入一个新结点,只需要修改新结点的指针域和第10个结点的指针域就可以实现,无须移动元素。选项C:线性表按顺序方式存储,删除线性表的第 990个结点,需要将第991个元素到第1000个元素依次向前移动一个位置,因此要移动10个元素。选项D:线性表按链接方式存储,删除指针P所指向的结点,只需要修改指针P所指向的指针域就可以实现,无须移动元素。因此,选项A所需的执行时间最长。

  • 第16题:

    在包含1000个元素的线性表中实现如下各运算,( )所需的执行时间最长。A.线性表按顺序方式存储,在线性表的第100个结点后面插入一个新结点B.线性表按链接序方式存储,在线性表的第100个结点后面插入一个新结点C.线性表按顺序方式存储,删除线性表的第900个结点D.线性表按链接方式存储,删除指针p所指向的结点


    正确答案:A
    线性表按顺序方式存储,对于插入和删除操作会比较麻烦,A项中要在线性表的第100个节点后面插入一个新节点,需要移动后面900元素的位置,因此执行的时间相对来说是最长的。

  • 第17题:

    在包括1000个元素的线性表示实现如下各运算,( )所需要的执行时间最长。A.线性表按顺序方式存储,在线性表的第10个结点后面插入一个新结点B.线性表按链接方式存储,在线性表的第10个结点后面插入一个新结点C.线性表按顺序方式存储,删除线性表的第990个结点D.线性表按链接方式存储,删除指针P所指向的结点


    正确答案:A
    根据顺序存储的特点,A项需移动990个元素,所以其花费的时间最长。

  • 第18题:

    若长度为n的线性表采用顺序存储结构,那么在第i个位置插入一个元素,需要依次向后移动 ______个元素。

    A.n-i

    B. n-i+1

    C. n-i-1

    D. i


    正确答案:B
    解析: 在采用顺序结构存储的线性表的第i个位置插入新元素,则要将第i个元素以后的元素向后移动(包括第i个元素) ,所以共有n-i+1个元素后移。

  • 第19题:

    在包含1000个元素的线性表中实现如下各运算,________所需的执行时间最短。

    A.当线性表按链接方式存储时,删除指针P所指向的结点

    B.当线性表按顺序方式存储时,性表的第10个结点后面插入一个新的结点

    C.当线性表按顺序方式存储时,删除线性表第10个结点

    D.当线性表按链式方式存储时,性表的第10个结点后面插入一个新结点


    正确答案:A
    解析:A中不需要移动数据元素。B中需要移动990个数据元素。C中需要移动990个数据元素。D中需要查找10个结点。

  • 第20题:

    有n个结点的线性表采用顺序表作为存储结构,要删除第i(l≤i≤n+1)个结点时,需要移动的结点个数为【】

    A.i

    B.n-i

    C.i-n

    D.n-i+l


    正确答案:B
    [解析]因为采用顺序表作为存储结构,要删除一个结点,就要将其后的n-i个结点向前移动.

  • 第21题:

    已知一个顺序存储的线性表,设每个结点需要占m个存储单元,若第一个结点的地址为da,则第i个结点的地址为()

    • A、da+(i-1)*m
    • B、da+i*m
    • C、da-i*m
    • D、da+(i+1)*m

    正确答案:A

  • 第22题:

    在一个长度为n的顺序表中向第i个元素(0<i<n+l )之前插入一个新元素时,需向后移动()个元素。

    • A、n-i
    • B、n-i+l
    • C、n-i-1
    • D、i

    正确答案:B

  • 第23题:

    单选题
    在n个结点的顺序表中,算法的时间复杂度是O(1)的操作是()。
    A

    访问第i个结点(1≤i≤n)和求第i个结点的直接前驱(2≤i≤n)

    B

    在第i个结点后插入一个新结点(1≤i≤n)

    C

    删除第i个结点(1≤i≤n)

    D

    将n个结点从小到大排序


    正确答案: B
    解析: 暂无解析