当前位置: 首页 > news >正文

C++数据结构和算法:链表

Q. 有序表和无序表(Hash表)区别?Key有无序的区别。

Q. map 和 set 区别:有无伴随数据的区别。

有序表:红黑树、AVL树、size-banlance-tree、跳表都是有序表

 哈希表:基础类型,值传递;非基础类,必须提供比较器,引用传递。

 

【经典题目】反转链表。要求实现单链表、双链表结构,迭代和递归两种方式。

 1 //迭代
 2 ListNode* ReverseList(ListNode* head)
 3 {
 4     ListNode* prev = nullptr;
 5     ListNode* curr = head;
 6     while (curr)
 7     {
 8         ListNode* next = curr->next;
 9         curr->next = prev;
10         prev = curr;
11         curr = next;
12     }
13     return prev;
14 }
 1 //递归
 2 ListNode* ReverseList(ListNode* head)
 3 {
 4     if (!head || !head->next)
 5         return head;
 6 
 7     ListNode* newHead = ReverseList(head->next);
 8     head->next->next = head;
 9     head->next = nullptr;
10 
11     return newHead;
12 }

 

快慢指针

两个指针p1,p2,p1每次+1,p2每次+2,直到越界前。

Q. 用链表做荷兰国旗问题

思路:准备6个指针,SH指向小于num的头,ST指向小于num的尾;EH指向等于num的头结点,ET指向等于num的尾结点;MH指向大于num的头结点,MT指向大于num的尾结点。

 

Q. 复制含有随机指针节点的链表

1 class Node{
2     int value;
3     Node next;
4     Node rand;
5     Node(int val){
6         value = val;
7     }    
8 }
http://www.zskr.cn/news/5511.html

相关文章:

  • 详细介绍:Maven入门_简介、安装与配置
  • train-labels.idx1-ubyte里是什么
  • 创建预测窗口-ScopedPredictionWindow();
  • Ability-GetCurrentActorInfo()-IsLocallyControlled()和APawn::IsLocallyControlled()
  • 应该遵守的代码规范与读《数学之美》有感
  • AT_arc171_c [ARC171C] Swap on Tree
  • 新媒体运营用AI排版工具|10分钟搞定公众号图文的全流程指南
  • ctf工具整理
  • 250915 jave se简单过完一遍
  • AT_arc183_b [ARC183B] Near Assignment
  • kubectl 常用命令的分类汇总(一)
  • 完整教程:C3P0连接池适配HGDB
  • kubectl 常用命令的分类汇总(二)
  • ECT-OS-JiuHuaShan框架的逻辑是自洽的,是基于数学表达,不替代现实的苦辣酸甜。
  • 《FastAPI零基础入门与进阶实战》第18篇:Token验证改善--CRUD中应用 - 详解
  • 【QT】创建一个简单的QT界面
  • 2025.9.15总结
  • 9.11总结
  • 真正的高手,首先是如何验证框架是数学逻辑自洽的必然,然后就可以放心去用。比如编码,几次输出,就可以断定是纯数学逻辑自洽的必然,除此之外,不可能得到这样的效果
  • Java 实现HTML转Word:从HTML材料与字符串到可编辑Word文档
  • 第02周Java:从方法传参到对象封装
  • 基于pandas自动化的csv信息提取保存的脚本
  • STM32 HAL学习笔记:GC1808(PCM1808)的使用以及使用I2S+DMA读取
  • MSTP 单域
  • 阿里云百炼平台使用避坑记录 - 详解
  • 第2周-预习作业
  • P12546 [UOI 2025] Convex Array
  • CF827F Dirty Arkadys Kitchen
  • P2839 [国家集训队] middle
  • wuti