LeetCode中的代码如何在本地编译器编译成功

admin 3145 2025-10-01 19:21:07

#include< cstdio >

在C++中拥有在C语言里一样的语法,像输入输出。

#include< cstring >

包含很多字符串函数,如复制、比较是否相等、字符串连接。

#include< iostream >

输入输出流,包括输出格式的控制

#include< cstdlib >

在C++中拥有在C语言里一样的语法,像开辟空间释放空间函数calloc、malloc,realloc和free;随机数rand。

#include< bitset >

相当于一个多位二进制数,八位一字节,支持基本的位运算操作。

#include< cmath >

数学函数,和C语言一样,有绝对值函数、开平方函数、求幂方函数等等。

#include< algorithm >

算法头文件,包括很多常用函数,像find_if、for_each、sort、partial_sort。

#include< string >

stl容器,有初始化、拼接、赋值、查找、替换、比较、子串、插入和删除操作。

#include< vector >

stl容器,动态数组(可变数组),也叫单口容器,有初始化、常用赋值操作、存取、插入、删除、大小操作。

#include< stack >

栈容器,先进后出,栈不能遍历,不支持随机存取,只能通过top从栈顶获取和删除元素,不提供迭代器。常用API有构造函数,赋值操作,数据存取操作和大小操作。

#include< list >

链表容器

链表是由一系列的结点组成,结点包含两个域,一个数据域,一个指针域。

链表内存是非连续的,添加删除元素,时间复杂度都是常数项,不需要移动元素,比数组添加删除效率高。链表只有在需要的时候才分配内存。链表 只要拿到第一个结点,相当于拿到整个链表。链表需要额外的空间保存结点关系 前驱后继。常用API有构造函数,数据元素插入删除操作,大小操作,赋值操作,数据存取和反转排列顺序。

#include< deque >

双口容器,支持随机存取。所谓双向开口,意思就是可以在头尾两端分别做元素的插入和删除操作。双端插入和删除元素效率高。指定位置插入也会导致数据元素移动,降低效率。可随机存取,效率高.。常用API有构造函数,赋值操作,大小操作,双端插入删除操作,数据存取。

#include< set >

二叉树容器

所有元素会根据元素的值自动进行排序。set是以RB-tree(红黑树,平衡二叉树的一种)为底层机制,其查找效率非常好。set容器中不允许重复元素,multiset允许重复元素。常用API有构造函数,赋值操作,大小操作,插入删除操作,查找操作。

#include< map >

map相对于set区别,map具有键值和实值,所有元素根据键值自动排序,pair的第一元素被称为键值,第二元素被称为实值,map也是以红黑树为底层实现机制的。常用API有构造函数,赋值操作,大小操作,插入删除操作,查找操作。

#include < bits/stdc++.h >

万能头文件,包含了目前c++所包含的所有头文件。可替换所有头文件。

上一篇
下一篇
相关文章