深信服-秋招提前批-笔试

填空(15道 有3道左右找规律)

1. 在单向链表中插入一个节点,需要修改该节点的()指针和其前驱节点的()指针

解析:next        next

2. 逆波兰表达式可以使用数据结构()来实现

解析:栈

3. 25+20*100-8/4的逆波兰表达式是()

解析:按照操作符的优先级进行转换:

           首先处理乘法和除法,因为它们的优先级高于加法和减法。

           ​​20 * 100 -> 20 100 * ; 8 / 4 -> 8 4 /

           然后处理加法和减法。加上 25 和减法操作符。

最终逆波兰表达式为:25 20 100 * + 8 4 / -

4. 在长度为n的有序单链表中插入一个新节点,并仍然保持有序的时间复杂度是()

解析:O(n)。这是因为需要从链表头开始遍历,找到合适的插入位置,而这需要遍历链表的节点,最坏情况下需要遍历到链表的末尾,时间复杂度为 O(n)。

5. 下列哪些物品清单更适合用数组来存储()(不定项选择题)

A.香蕉、小气球、玩具         B.苹果手机、华为手机、小米手机         C.大豆、土豆、豌豆

解析:数组的特性——适合存储类型相同数量固定的数据,下列物品清单中更适合用数组来存储的是:B. 苹果手机、华为手机、小米手机        C. 大豆、土豆、豌豆

这两个选项中的物品在一定程度上具有相同的特性(如手机属于同一类物品,豆类属于同一类食物),因此可以用数组来存储。

而选项 A. 香蕉、小气球、玩具,物品类型不一致,不适合用数组来存储。

6. 设栈S和队列Q的初始状态均为空,元素a,b,c,d,e,f,g依次进入栈S。若每个元素出栈后立即进入队列Q,且7个元素出队的顺序是b,d,c,f,e,a,g,则栈S的容量至少是()

解析:要确定栈 S 的容量,我们需要分析这个问题的操作顺序,假设栈的容量为 k,然后推断其最小值。根据题意,元素 a, b, c, d, e, f, g 依次入栈,出栈的顺序是 b, d, c, f, e, a, g,并且每个元素出栈后立即进入队列 Q。我们假设栈的容量为最小值,并分析出栈和入队的顺序:

  1. 元素 a 入栈。
  2. 元素 b 入栈,b 出栈并进入队列。
  3. 元素 c 入栈。
  4. 元素 d 入栈,d 出栈并进入队列。
  5. 元素 c 出栈并进入队列。
  6. 元素 e 入栈。
  7. 元素 f 入栈,f 出栈并进入队列。
  8. 元素 e 出栈并进入队列。
  9. 元素 g
  • 18
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值