测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

PROBLEM SET

双向链表

按知识点筛选题目,系统巩固该考点。

共 11 题
重置

题目列表

共 11 题
A61647 以下哪组操作能完成在双向循环链表结点 p 之后插入结点 s 的效果(其中,next 域为结 点的直接后继,prev域为结点的直接前驱):( )。 2022年 指针操作 结点插入 双向链表 -- -- A61442 对于一个1到n的排列p(即1到n中每一个数在p中出现了恰好一次),令qi为第i个位置之后第一个比pi值更大的位置,如果不存在这样的位置,则qi =n+1。举例来说,如果n=5且p为1 5 4 2 3,则q为2 6 6 5 6。下列程序读入了排列p,使用双向链表求解了答案。试补全程序。数据范围 1 ≤ n ≤ 105。#include<iostream> 2018年 双向链表 排列与下标映射 数组模拟链表 贪心构造 -- -- A61240 在含有 n 个元素的双向链表中查询是否存在关键字为 k 的元素,最快情况下运行的时间复杂度 是( )。 2011年 时间复杂度 查找操作 双向链表 -- -- A61210 双向链表中有两个指针域llink和rlink,分别指向该结点的前驱及后继。设p指向链表中的一个结点,它的左右结点均非空。现要求删除结点p,则下面语句序列中错误的是( )。 2010年 指针操作 双向链表 结点删除 -- -- A61427 对于一个1到n的排列p(即1到n中每一个数在p中出现了恰好一次),令qi为第i个位置之后第一个比pi值更大的位置,如果不存在这样的位置,则qi =n+1。举例来说,如果n=5且p为1 5 4 2 3,则q为2 6 6 5 6。下列程序读入了排列p,使用双向链表求解了答案。试补全程序。(第二空2分,其余3分)数据范围 1 ≤ n ≤ 105。#include<iostream> 2018年 模拟 双向链表 排列与逆排列 数组下标映射 -- -- A66096 下⾯的C++代码⽤于将字符串保存到带头节点的双向链表中,并对重复的串计数,然后将最新访问的串的节 点放在链头便于查找。横线处应填⼊代码是( )。 2023年 字符串处理 指针操作 双向链表 节点移动 -- -- A66897 下⾯的代码⽚段⽤于在双向链表中删除⼀个节点 。请在横线处填⼊( ) ,使其能正确实现相应功能。1 void deleteNode(DoublyListNode*& head, int value) { 2024年 指针操作 双向链表 节点删除 -- -- A66725 小杨想在如上题所述的双向链表中加入一首新歌曲。为了能快速找到该歌曲,他将其作为链表的第一首歌 曲,则下面横线上应填入的代码为( )。1 void insert(dl_node *head, string my_song) { 2024年 指针操作 双向链表 链表插入 -- -- A67630 双向链表中每个结点有两个指针域prev和next,分别指向该结点的前驱及后继结点。设p指向链表中的一个结点,它的前驱结点和后继结点均非空。要删除结点p,则下述语句中错误的是( )。 2025年 指针操作 双向链表 结点删除 -- -- A67600 栈和队列均可以用双向链表实现,插入和删除操作的时间复杂度为O(1) 。 2025年 队列 时间复杂度 双向链表 -- -- A67481 基于上题(http://www.6547.cn/question/view/y3nhjfhkcejw2xtd)代码正确的前提下,填入相应代码完善 append() ,用于在双向链表尾部增加新节点,横线上应填 写( )。void append(int data) { Node* newNode = new Node{data, nullptr, nullptr}; 2025年 指针操作 双向链表 链表插入 -- --