NewCoder(牛客)题集--Five

A.1 , 2 , 3 , 4 , 5 , 6

B.2 , 1 , 3 , 4 , 5 , 6

C.3 , 4 , 2 , 1 , 5 , 6

D.4 , 3 , 2 , 1 , 5 , 6

解:D

解析:最大长度为3,若开始是4出栈,意味着1,2,3,4已经进栈,超出3所以不可能

解:对

解析:朴素的匹配只匹配一次,不用计算next数组,所以速度更快

A.100      B.40       C.55            D.80

解:C

解析:主对角线都存:10个,剩下的90个只存一半45个,共55个

解:4  5

解析:

数组名有两重属性

1.数据结构的一个对象(数据结构为当前数组),在java中数组就是一个对象

2.某些情况下自动退化成指向第一个元素的常量指针

本题中:

A+1为指向第二个元素的常量指针

*(A+1)为第二个元素,(第二个元素为int [3],即{4,5,6})

同时对象名也是指向第一个元素的常量指针。

所以*(A+1)也是指向元素4的指针,

那么*(A+1)+1为指向元素5的指针。

解:1178

解析:

如果以任意的A[c1..d1,c2..d2]A[c1..d1,c2..d2](其中c1、c2c1、c2表示基地址元素;d1−c1+1、d2−c2+1d1−c1+1、d2−c2+1表示数组的行数和列数)可得:address(aij)=address(ac1c2)+((j−c2)(d1−c1+1)+(i−c1))e    (每个元素占用空间ee个单位)

如题意:c1=c2=1,d1=4,d2=6

则address(a34)=a11+(3*4+2)*4

求得a11

解:对

解析:置换-选择排序就是一种减小n的、在外部排序中创建初始归并段时用到的算法。它可以让初始归并段的长度增减,从而减小初始归并段的段数(因为总的记录数是一定的)

A.快速排序算法平均速度比插入排序平均速度快

B.堆排序在每一趟排序过程中,都会有一个元素被放置在最终位置上

C.在10000个无序的元素中查找最大的10个元素,使用快速排序最快

D.插入排序是一种稳定的排序算法

解:C

解析:使用堆排序是最快

A.不能是子表

B.只能是子表

C.只能是原子

D.是原子或子表

解:B

解析:

(1)《数据结构》对广义表的表头和表尾是这样定义的: 
如果广义表LS=(a1,a2...an)非空,则 a1是LS的表头,其余元素组成的表(a2,a3,..an)是称为LS的表尾。 
根据定义,非空广义表的 表头是一个元素,它 可以是原子也可以是一个子表, 而表尾则必定是子表。例如:LS=(a,b),表头为a,表尾是(b)而不是b.另外:LS=(a)的表头为a,表尾为空表().
(2)非空广义表,除表头外,其余元素构成的表称为表尾,所以非空广义表尾一定是个表

A.e3,e1,e4,e2

B.e2,e4,e3,e1

C.e2,e3,e4,e1

D.任意顺序都有可能

解:BC

解析:

栈的规则:先进后出

例如进栈序列为:1,2,3,4

全部进栈完成再出栈的序列则为:4,3,2,1

注:一个元素进栈后可以马上出栈,不用等全部进栈

 

例如:2这个元素一进就想出了,后面的3,4正常进栈再出栈。

那么出栈顺序就是:2,4,3,1  (1是第一个进的,进的时候也没有立刻出去,所以被压在栈底,最后才能出去)

 

例如:2这个元素一进就想出了,后面的3一进也想立刻想出去了,后面的4跟着进栈

那么出栈顺序就是:2,3,4,1  (2,3都进了立刻出 所以这时4压着的是1,所以出栈顺序是4在前面)

A.25,10,15,20

B.25,10,15,18,20

C.10,30,20

D.10,30,25,20

解;ABCD

解析:

A:首先根节点为25,20比25小搜索其左子树,找到10比25小不矛盾,20比10大搜索其右子树,找到15比10大不矛盾,20比15大搜索其右子树找到20,正确

B:首先根节点25,20比25小搜索其左子树,找到10比25小不矛盾,20比10大搜索其右子树,找到15比10大不矛盾, 20比15大搜索其右子树,找到18比15大不矛盾, 20比***搜索其右子树,找到20,正确

C:首先根节点为10,20比10大搜索其右子树,找到30比10大不矛盾,20比30小搜索其左子树,找到20,正确

D:首先根节点为10, 20比10大搜索其右子树,找到30比10大不矛盾,20比30小搜索其左子树,找到25比30小不矛盾,20比25小搜索其左子树找到20,正确

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值