//1.The data structure
1
.
vector:
//a.vector的头文件:
#include
"vector"
//b.二维 vector<vector<int> > vv(3, vector<int>(4));//这里,两个“>”间的空格是不可少的
//c. C++ java :vector.size()为长度
//d. vector 当做栈:
v.
push_back
()
v.
pop_back
()
//e.遍历
vector
<
int
>
v;
vector
<
int
>
::iterator it;
for
(it
=
G.
begin
();it
!=
G.
end
();it
++
)
{
if
( (
*
it)
==
)
}
2.
stack
empty
() 堆栈为空则返回真
pop
() 移除栈顶元素
push
() 在栈顶增加元素
size
() 返回栈中元素数目
top
() 返回栈顶元素
注意弾栈操作:
int
a
=
v.
top
();
v.
pop
();
3.
队列:queue
#include
<iostream>
#include
<queue>
#include
<queue>
详细用法:
定义一个queue的变量 queue
<
Type
>
M
查看是否为空范例 M.
empty
() 是的话返回1,不是返回0;
出队: 显示第一个元素 M.
front
() 清除第一个元素 M.
pop
()
从已有元素后面增加元素 M.
push
() 显示最后一个元素 M.
back
()
输出现有元素的个数 M.
size
()
4.
优先级队列 priority_queue
<
int
>
Q
5
. C
++
结构体
struct
ListNode
{
int
val;
ListNode
*
next;
ListNode
(
int
x) :
val
(x),
next
(
NULL
) {}
};
ListNode
*
temp
=
(ListNode
*
)
malloc
(
sizeof
(ListNode));
ListNode
*
temp
=
(ListNode
*
)
new
ListNode
();
6.
map
#include
<map>
mapStudent.
insert
(pair
<
int
, string
>
(
3
,
"student_three"
));
7.
max min 函数
#include
<algorithm>
8.
随机函数
取得[a,b]的随机整数:
rand
()
%
(b
-
a
+
1
)
+
a;
取得(
0
,x)的随机整数:
rand
()
%
x;
取得(a,b)的随机整数:
rand
()
%
(b
-
a);
取得[a,b)的随机整数:
rand
()
%
(b
-
a)
+
a;
取得(a,b]的随机整数:
rand
()
%
(b
-
a)
+
a
+
1
;
取得0
-
1之间的浮点数:
rand
()
/
double
(RAND_MAX)。
9
. 绝对值函数
头文件:#include
<
cmath
>
10
.
C语言的初始化函数:
char
a[
100
];
memset
(a,
'
\0
'
,
sizeof
(a));
C
++
初始化函数
# include
<algorithm>
fill
();