以下是 C++ 中常见数据结构的定义、长度以及初始化示例:
数组 (Array):
- 定义:
int arrayName[length];
- 初始化:
或者int arrayName[length] = {value1, value2, ..., valueN};
int arrayName[length] = {}; // 全部元素初始化为0
- 定义:
向量 (Vector):
- 需要包含
<vector>
头文件 - 定义:
std::vector<dataType> vectorName;
- 初始化:
或者std::vector<dataType> vectorName(length);
std::vector<dataType> vectorName = {value1, value2, ..., valueN};
- 需要包含
链表 (Linked List):
- 自定义结构体或类表示节点
- 定义:
struct Node { dataType data; Node* next; };
- 链表头指针定义:
Node* head = nullptr; // 或者 Node* head = NULL;
栈 (Stack):
- 使用向量或者链表实现
- 定义(基于向量):
std::stack<dataType> stackName;
- 定义(基于链表):自定义类实现栈操作
队列 (Queue):
- 使用向量或者链表实现
- 定义(基于向量):
std::queue<dataType> queueName;
- 定义(基于链表):自定义类实现队列操作
集合 (Set):
- 需要包含
<set>
头文件 - 定义:
std::set<dataType> setName;
- 需要包含
映射 (Map):
- 需要包含
<map>
头文件 - 定义:
std::map<keyType, valueType> mapName;
- 需要包含
哈希表 (Hash Table):
- 需要包含
<unordered_map>
头文件 - 定义:
std::unordered_map<keyType, valueType> hashMapName;
- 需要包含
堆 (Heap):
- 使用向量实现
- 需要包含
<algorithm>
头文件 - 定义:
std::vector<dataType> heapName;
- 初始化堆:
std::make_heap(heapName.begin(), heapName.end());