C++ 各种数据结构定义以及初始化

本文详细介绍了C++中的各种数据结构,包括数组、向量、链表、栈、队列、集合、映射、哈希表和堆,以及它们的定义、长度和初始化方法。
摘要由CSDN通过智能技术生成

以下是 C++ 中常见数据结构的定义、长度以及初始化示例:

  1. 数组 (Array):

    • 定义:int arrayName[length];
    • 初始化:
      int arrayName[length] = {value1, value2, ..., valueN};
      
      或者
      int arrayName[length] = {}; // 全部元素初始化为0
      
  2. 向量 (Vector):

    • 需要包含 <vector> 头文件
    • 定义:std::vector<dataType> vectorName;
    • 初始化:
      std::vector<dataType> vectorName(length);
      
      或者
      std::vector<dataType> vectorName = {value1, value2, ..., valueN};
      
  3. 链表 (Linked List):

    • 自定义结构体或类表示节点
    • 定义:
      struct Node {
          dataType data;
          Node* next;
      };
      
    • 链表头指针定义:
      Node* head = nullptr; // 或者 Node* head = NULL;
      
  4. 栈 (Stack):

    • 使用向量或者链表实现
    • 定义(基于向量):std::stack<dataType> stackName;
    • 定义(基于链表):自定义类实现栈操作
  5. 队列 (Queue):

    • 使用向量或者链表实现
    • 定义(基于向量):std::queue<dataType> queueName;
    • 定义(基于链表):自定义类实现队列操作
  6. 集合 (Set):

    • 需要包含 <set> 头文件
    • 定义:std::set<dataType> setName;
  7. 映射 (Map):

    • 需要包含 <map> 头文件
    • 定义:std::map<keyType, valueType> mapName;
  8. 哈希表 (Hash Table):

    • 需要包含 <unordered_map> 头文件
    • 定义:std::unordered_map<keyType, valueType> hashMapName;
  9. 堆 (Heap):

    • 使用向量实现
    • 需要包含 <algorithm> 头文件
    • 定义:std::vector<dataType> heapName;
    • 初始化堆:std::make_heap(heapName.begin(), heapName.end());
  • 12
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我写代码菜如坤

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值