stack的基本操作有:
1.入栈:如s.push(x);
2.出栈:如 s.pop().注意:出栈操作只是删除栈顶的元素,并不返回该元素。
3.访问栈顶:如s.top();
4.判断栈空:如s.empty().当栈空时返回true。
5.访问栈中的元素个数,如s.size();
---------------------------------------------------------------------------------------------------------------------
vector的基本操作有:
1.构造函数
vector():创建一个空vector
vector(int nSize): 创建一个vector, 元素个数为nSize
vector(int nSize, const t& t): 创建一个vector,元素个数为nSize, 且值均为 t
vector(const vector&): 复制构造函数
vector(begin, end): 复制 [begin, end) 区间内另一个数组的元素到vector中
2.增加函数
void push_back(const T& x): 向量尾部增加一个元素X
iterator insert(iterator it, const T& x): 向量中迭代器指向元素前增加一个元素x
iterator insert(iterator it, int n, const T& x): 向量中迭代器指向元素前增加n个相同的元素x
iterator insert(iterator it, const_iterator first, const_iterator last): 向量中迭代器指向元素前插入另一个相同类型向量的[first, last)间的数据
3.删除函数
iterator erase(iterator it): 删除向量中迭代器指向元素
iterator erase(iterator first, iterator last): 删除向量中[first, last)中元素
void pop_back(): 删除向量中最后一个元素
void clear(): 清空向量中所有元素
4.遍历函数
reference at(int pos): 返回pos位置元素的引用
reference front(): 返回首元素的引用
reference back(): 返回尾元素的引用
iterator begin(): 返回向量头指针,指向第一个元素
iterator end(): 返回向量尾指针,指向向量最后一个元素的下一个位置
reverse_iterator rbegin(): 反向迭代器,指向最后一个元素
reverse_iterator rend(): 反向迭代器,指向第一个元素之前的位置
5.判断函数
bool empty() const: 判断向量是否为空,若为空,则向量中无元素
6.大小函数
int size() const: 返回向量中元素的个数
int capacity() const: 返回当前向量张红所能容纳的最大元素值
int max_size() const: 返回最大可允许的vector元素数量值
7.其他函数
void swap(vector&): 交换两个同类型向量的数据
void assign(int n, const T& x): 设置向量中第n个元素的值为x
void assign(const_iterator first, const_iterator last): 向量中[first, last)中元素设置成当前向量元素
-------------------------------------------------------------------------------------------------------------------------------
堆的基本操作有:
-
build:建立一个空堆;
-
insert:向堆中插入一个新元素;
-
update:将新元素提升使其符合堆的性质;
-
get:获取当前堆顶元素的值;
-
delete:删除堆顶元素;
-
heapify:使删除堆顶元素的堆再次成为堆。
------------------------------------------------------------------------------------------------------------------
链表的基本操作有:
ListNode* Buy_node(Datatype x); //创建一个节点
void PrintList(ListNode* pHead);//打印链表
void PushBack(ListNode** ppHead, Datatype x);//尾插
void PopBack(ListNode** ppHead);//头插
void PopBack(ListNode** ppHead);//尾删
void PushFront(ListNode** ppNode, Datatype x);//头删
ListNode* Find(ListNode* pHead, Datatype x);//查找一个数据x
//在pos前面插入一个数据
void Insert(ListNode** ppHead, ListNode* pos, Datatype x);
void Erase(ListNode** ppHead, ListNode* pos);//删除pos位置的数据
----------------------------------------------------------------------------------------------------------------------------
队列的基本操作有:
add 增加一个元索 如果队列已满,则抛出一个IIIegaISlabEepeplian异常
remove 移除并返回队列头部的元素 如果队列为空,则抛出一个NoSuchElementException异常
element 返回队列头部的元素 如果队列为空,则抛出一个NoSuchElementException异常
offer 添加一个元素并返回true 如果队列已满,则返回false
poll 移除并返问队列头部的元素 如果队列为空,则返回null
peek 返回队列头部的元素 如果队列为空,则返回null
put 添加一个元素 如果队列满,则阻塞
take 移除并返回队列头部的元素 如果队列为空,则阻塞