STL_容器_vector and list

vector
1.insert()函数 三种用法:
1) iterator insert(iterator loc, const TYPE &val);
在指定位置loc 前插入值为val 的元素,返回指向这个元素的迭代器;
2) void insert(iterator loc, size_type num, const TYPE &val);
在指定位置loc 前插入num 个指为val 的元素;
3) void insert(iterator loc, input_iteratorstart,input_iterator end);
在指定位置loc 前插入区间[start, end) 的所有元素。
2.push_back , 添加一个元素到vector 末尾。
void push_back(const TYPE &val);
pop_back ,删除当前vector 的最后一个元素。
void pop_back();
3.at() , 负责返回指定位置的元素
4.erase() 用于删除元素
1. iterator erase(iterator loc);
删除指定位置loc 的位置
2. iterator erase(iterator start, iterator end);
删除区间[start, end) 的所有元素,返回值是只想删除的最后一个元素的下一位位置的迭代器。
4.
1)vector 的构造函数
vector(); //无参,构造一个空的vector
vector(size_type num, TYPE &val);//两个参数,一个由num表示个数、val表示值的vector
vector(const vector &from);//一个参数,构造与from相同的vector
vector(input_iterator start, input_itterator end);//开始位置和终止位置
2)访问vector信息
max_size()//返回vector可以最多容纳元素的数量
size()//返回vector当前元素的数量
capacity()//返回vector索恩能够容纳的元素数量(不重新分配内存)
empty()//判断vector是否为空,为空返回TRUE,否则返回FALSE
3)存取vector信息
构造函数、push_back()、insert()、数组运算符、赋值运算符、pop_back()、erase()、begin()、
end()、rbegin、rend()、size、maxsize

#include<bits/stdc++.h>
using namespace std;
int main(){//insert()插入元素
	unsigned i;
	vector<int> number;
	number.insert(number.begin(), 99);
	number.insert(number.begin(), 98);
	number.insert(number.end(), 97);
	cout<<"before delete:"<<endl;		
	for(i = 0; i < number.size(); i++){
		cout<<number[i]<<endl;
	}
	number.erase(number.begin());
	number.erase(number.begin());
	cout<<"after delete:"<<endl;
	for(i = 0; i < number.size(); i++){
		cout<<number[i]<<endl;
	}
	return 0;
} 

#include<bits/stdc++.h>
	
using namespace std; 
	
int main (){//erase()删除元素
	 unsigned int i;
	 vector<int> number;
	 number.insert(number.begin(), 99);
	 number.insert(number.begin(), 98);
	 number.insert(number.begin(), 97);
	 number.insert(number.end(), 92);
	 number.insert(number.end(), 90);
	 for(i = 0; i < number.size(); i++){
   	 cout<< number[i] <<endl;
	 }
	 sort(number.begin(), number.end());
	 for(i = 0; i < number.size(); i++){
	 	cout<< number[i] <<endl;
	 }
	 return 0;
 }

list
1.list的构造函数
list();
list(size_type num, const TYPE &val);
list(const vector &from);
list(input_iterator start, output_iterator end);
2.访问list 信息
max_size//返回list 可以最多容纳元素的数量;
size()//返回list 当前元素的数量;
empty()//判断vector 是否为空, 为空时返回TRUE, 否则返回FASE;
3.存取list 信息
insert()//插入元素, 参照vector
remove()//删除元素, 原型为void remove(const T& x);

#include<bits/stdc++.h>
using namespace std;
int main (){
	list<char>Target;
	list<char>List;
	Target.push_back('1');
	Target.push_back('1');
	List.push_back('i');
	List.push_back('h');
	List.push_back('1');
	List.push_back('1');
	list<char>::iterator PositionofNulls = search(List.begin(), List.end(), Target.begin(), Target.end());
	if(PositionofNulls != List.end())	cout<<"Found!"<<endl;
	else cout<<"Not Found!"<<endl; 
	return 0;
}

STL通用算法
reverse()//逆转函数
//number.reverse();
for_each()//遍历从iterator的起始位置到末尾位置的所有元素。
//for_each(Food.begin, Food.end(), PrintLine);
//void PrintLine(string& StringLine){ cout<<StringLine<<endl; }

cout()//负责统计与定制定值相等的对象个数。
//cout(Score.begin90, Score.end(), 100);
 
cout_if()//根据前两个iterator参数指出的范围来处理容器对象
//cout_if(SalesRecords.begin(), SalesRecords.end(), IsAFlashDrive());
//const string FlashDriveCode("0003")//代表16G U盘
class IsAFlashDrive{
public:
Bool operateor() (string& SalesRecords){return SalesRecords.substr(0, 4) == FlashDriveCode;}
}
 
search()//一种定位算法,在一个序列中找到另一个序列第一次出现的位置
//search(ListOfCharacter().begin(), ListOfCharacter().end, TargetCharacter.begin(), TargetCharacter.end());
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值