当有了c++之后就有了STL模板库,这为我们提供了许多的便利,我们完成题目时会用到许多的函数需要自己对此进行编辑,这会让我们花一部分的时间和大量的空间来进行编写,可是如果我们用了c++之中的STL模板库,可以直接调用c++为我们已经编辑好的函数了,对于我们来说十分便利( 既省时又省空间还省力气,那何乐而不为呢? )
就是因为如此,就体现出我们要学习STL模板库常用函数的重要性了。
在STL模板库中常用的函数有vector,set,string,map,queue,stack,min,max,abs,sort,memset,fill等
在这里我不在赘述具体用法,现在谈一谈STL模板库具体好在什么地方
相信大家都知道深度优先搜索(dfs)吧,当我们运用深度优先搜索的时候,我们将自己写一个栈,这可能会耗费我们大量的时间,但是我们直接调用STL模板库当中的stack(栈的函数)就将是十分简单了。
栈(LIFO):限定仅在表尾进行插入和删除操作的线性表,简单来说就是最后一个进入最早出来的数据结构
栈结构:
typedef struct SqStack
{
int data[MAX];
int top;
}SqStack;
基本操作:
//初始化栈
void InitStack(SqStack *s)
{
s->top=-1;
}
//判断栈是否为空
int Stackempty(SqStack *s)
{
if(s->top==-1)
return 0;
else
return 1;
}
//进栈
int push(SqStack *s,int e)
{
if(s->top==MAX-1)
{
printf("栈满\n");
return 0;
}
s->data[++s->top]=e;
return 1;
}
//出栈
int pop(SqStack *s,int *e)
{
if(s->top==-1)
{
printf("栈空\n");
return 0;
}
*e=s->data[s->top--];
return 1;
}
STL模板库 我可以直接调用
stack<typename>name;
就可以了 可见STL的优越性,那接下来我们就要认真学习STL模板库中的基本函数了
That's all .
So much for today .See you next time!
原文链接: https://www.cnblogs.com/wozuishuaiwozuiniu6/p/13151312.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;
也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/356364
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!