在刷题时,如何用c++写单链表 双链表和 二叉树类呢?

单链表:

class ListNode {public:
int value;
ListNode *next;
ListNode() : value(0), next(nullptr) {}
ListNode(int x) : value(x), next(nullptr) {}
ListNode(int x, ListNode *next) : value(x), next(next) {}};

双链表:

class DLinkedNode
{
public:int  value;DLinkedNode* prev;DLinkedNode* next;DLinkedNode():value(0),prev(nullptr),next(nullptr){}DLinkedNode(int _value):value(_value),prev(nullptr),next(nullptr){}};

二叉树:

  class TreeNode {
public:
int value;
TreeNode *left;
TreeNode *right;
TreeNode() : value(0), left(nullptr), right(nullptr) {}
TreeNode(int x) : value(x), left(nullptr), right(nullptr) {}
TreeNode(int x, TreeNode *left, TreeNode *right) : value(x), left(left), right(right) {}};

数据成员:value,左孩子指针left,右孩子指针right

构造函数:默认构造函数,带value参数的构造函数,带value参数和指针参数的构造函数

用c++实现简单单链表,双链表,二叉树类相关推荐

  1. 数据结构之 链表( 单链表, 双链表,循环链表)

    前篇.链表的概括 1.链表(Linked list)说明 是一种常见的基础数据结构,是一种线性表,但是并不会按线性的顺序存储数据,而是在每一个节点里存到下一个节点的指针(Pointer).由于不必须按 ...

  2. 链表之单、双链表反序

    给定一个单链表,然后对它反序. ListNode类 public class ListNode {int val;ListNode next;ListNode(int x){val=x;next=nu ...

  3. 单、双链表的循环链表(十五)

    1. 单链表的循环链表 <1>.单链表的循环链表特点 单链表只能向后操作,不能向前操作,如果从当前结点开始,无法访问该结点前面的结点. 如果最后一个结点的指针指向头节点,形成一个闭环,就可 ...

  4. Acwing算法基础课学习笔记(四)--数据结构之单链表双链表模拟栈模拟队列单调栈单调队列KMP

    单链表 算法题中最常考的单链表就是邻接表(用来存储图和数),比如最短路问题,最小生成树问题,最大流问题.双链表用于优化某些问题. 利用数组来表达单链表:存储值和指针的两个数组利用下标进行关联. 需要注 ...

  5. 双链表——双链表的定义及其基本操作(初始化、头插法尾插法建表、插入、查找、删除、判空等)

    文章目录 双链表的定义 双链表上的操作 初始化 插入操作 建立双链表 头插法建立双链表 尾插法建立双链表 遍历操作 求双链表的长度 查找操作 按值查找 按位查找 删除操作 判空操作 完整代码及实例 总 ...

  6. 数据结构—链表-双链表

    typedef struct DNode { ElemType data; struct DNode *prior; struct DNode *next; } DLinkList; 头插法建立双链表 ...

  7. 【数据结构和算法】动图详解,链表(单链表/双链表……)(实例讲解)

  8. 数据结构一线性表 (顺序表、单链表、双链表)

    版权声明:本文为openXu原创文章[openXu的博客],未经博主允许不得以任何形式转载 文章目录 1.线性表及其逻辑结构 1.1 线性表的定义 1.2 线性表的抽象数据类型描述 2.线性表的顺序存 ...

  9. 单链表删除所有值为x的元素_双链表的基本实现与讲解(C++描述)

    双链表 双链表的意义 单链表相对于顺序表,确实在某些场景下解决了一些重要的问题,例如在需要插入或者删除大量元素的时候,它并不需要像顺序表一样移动很多元素,只需要修改指针的指向就可以了,其时间复杂度为 ...

最新文章

  1. fragment中文网_更新 · React Native 中文网
  2. STM32 基础系列教程 33 - Lwip_tcp_client
  3. 一个时间日期转换格式的小功能(Oracle)
  4. 连接虚拟机mysql无法访问_连接虚拟机mysql无法访问,报错编号1130的解决方法
  5. ABAP Development Tool IDE里编写的CDS view源代码是如何传递到ABAP后台并解析的
  6. 操作系统(八)进程管理——进程同步
  7. 15.Linux/Unix 系统编程手册(上) -- 文件属性
  8. ERROR 2002 (HY000): mysql
  9. 学业水平测试计算机知识点,2021高中学业水平考试信息技术知识点
  10. Winhex的使用教程
  11. WithMath|无穷级数一:定义理解与正项级数
  12. 在VMware WorkStation中安装Windows Server 2016
  13. 【叶子函数分享五十四】汉字转拼音函数
  14. iOS 判断系统版本
  15. SQLyog数据库列表(对象浏览器)字体大小设置方法,不是普通字体大小设置
  16. HDU 2174 Bridged Marble Rings
  17. Windows 系统错误码
  18. 海南省大数据管理局项目建设处刘雄:区块链技术在海南政务服务领域的典型应用
  19. Keil MDK版本更新
  20. 安装gym 遇到的各种坑

热门文章

  1. HDU 1532 Drainage Ditches(poj1273)【E-K 最大流】
  2. 代码换肤术——C#和VB(摘抄)
  3. 您未必知道的Css技巧
  4. Bailian2758 菲波那契数列(2)【递推】
  5. Bailian2734 十进制到八进制(POJ NOI0113-45)【进制】
  6. CCF NOI1026 表演打分
  7. 异或算法在算法求解中的妙用
  8. Linux 实用命令
  9. 算法——贪心算法解0-1背包问题
  10. python def函数参数_Python def函数的定义、使用及参数传递实现代码