clear();删除向量中的所有对象

erase(iterator it);删除it所指向的容器对象

insert(iterator it,const T&);向it所指的向量位置前插入一个对象

push_back(const T&);向向量尾部插入一个对象

push_front(const T&);向向量头部插入一个对象

remove(const T&);删除特定的对象

sort();排序

unique();唯一。把链表中前后有相同元素的结点删除

 #include <iostream>
#include <list> void main()
{
std::list<int>mylist; mylist.push_back();//向向量尾部插入一个对象
mylist.push_back();
mylist.push_back();
mylist.push_back(); auto ibegin = mylist.begin();//迭代器
auto iend = mylist.end(); for (; ibegin != iend; ibegin++)//使用迭代器进行遍历
{
std::cout << *ibegin << std::endl;
}
}

对特定元素进行删除,erase实现,先查找,后删除

 #include <iostream>
#include <list> void main()
{
std::list<int>mylist; mylist.push_back();//向向量尾部插入一个对象
mylist.push_back();
mylist.push_back();
mylist.push_back(); auto ibegin = mylist.begin();//迭代器
auto iend = mylist.end(); for (; ibegin != iend; ibegin++)//使用迭代器进行遍历
{
if (*ibegin == )
{
mylist.erase(ibegin);
break;//删除以后,一定要break,因为ibegin已经变更了
}
} ibegin = mylist.begin();//迭代器
iend = mylist.end(); for (; ibegin != iend; ibegin++)//使用迭代器进行遍历
{
std::cout << *ibegin << std::endl;
}
}

对特定元素进行删除,remove实现,先查找,后删除

 #include <iostream>
#include <list> void main()
{
int a[] = { ,,,, };
std::list<int>mylist(a, a + ); mylist.push_front();//向向量头部插入一个对象 auto ibegin = mylist.begin();//迭代器
auto iend = mylist.end(); mylist.remove(); for (; ibegin != iend; ibegin++)//使用迭代器进行遍历
{
std::cout << *ibegin << std::endl;
}
}

在特定元素前插入新的元素,先查找,后插入

 #include <iostream>
#include <list> void main()
{
int a[] = { ,,,, };
std::list<int>mylist(a, a + ); mylist.push_front();//向向量头部插入一个对象 auto ibegin = mylist.begin();//迭代器
auto iend = mylist.end(); for (; ibegin != iend; ibegin++)//使用迭代器进行遍历
{
if (*ibegin == )
{
mylist.insert(ibegin, );
break;
}
} ibegin = mylist.begin();//迭代器
iend = mylist.end(); for (; ibegin != iend; ibegin++)//使用迭代器进行遍历
{
std::cout << *ibegin << std::endl;
}
}

使用反向迭代器进行遍历

 #include <iostream>
#include <list> void main()
{
int a[] = { ,,,, };
std::list<int>mylist(a, a + ); auto rb = mylist.rbegin();//反向迭代器
auto re = mylist.rend(); for (; rb != re; rb++)//使用迭代器进行遍历
{
std::cout << *rb << std::endl;
}
}

两个链表进行合并

必须先排序,后合并,否则会出错

 #include <iostream>
#include <list> void main()
{
int a[] = { ,,,, };
std::list<int>mylist1(a, a + ); int b[] = { ,,,, };
std::list<int>mylist2(b, b + ); mylist1.sort();//排序
mylist2.sort(); mylist1.merge(mylist2);//合并。必须先排序,后合并,否则会出错 auto ibegin = mylist1.begin();//迭代器
auto iend = mylist1.end(); for (; ibegin != iend; ibegin++)//使用迭代器进行遍历
{
std::cout << *ibegin << std::endl;
}
}

链表元素的唯一

必须先排序,后唯一

 #include <iostream>
#include <list> void main()
{
int a[] = { ,,,,, };
std::list<int>mylist1(a, a + ); mylist1.sort();//排序
mylist1.unique();//唯一。必须先排序,后唯一 auto ibegin = mylist1.begin();//迭代器
auto iend = mylist1.end(); for (; ibegin != iend; ibegin++)//使用迭代器进行遍历
{
std::cout << *ibegin << std::endl;
}
}

#include <list>的更多相关文章

  1. 浅谈JSP中include指令与include动作标识的区别

    JSP中主要包含三大指令,分别是page,include,taglib.本篇主要提及include指令. include指令使用格式:<%@ include file="文件的绝对路径 ...

  2. Entity Framework 6 Recipes 2nd Edition(13-9)译 -> 避免Include

    问题 你想不用Include()方法,立即加载一下相关的集合,并想通过EF的CodeFirst方式实现. 解决方案 假设你有一个如Figure 13-14所示的模型: Figure 13-14. A ...

  3. error RC1015: cannot open include file 'afxres.h' 解决办法

    在为WindowsPhone8程序添加本地化的过程中遇到这个问题: 问题原因就是afxres.h文件缺失,下载它,放到VS安装目录下的VS\include目录下就可以了(选择目录的时候注意对应对版本) ...

  4. Mybatis常用总结:参数,返回,执行sql,include等

    1.参数注入1.1用#{0},#{1}的形式,0代表第一个参数,1代表第二个参数 public List<RecordVo> queryList(String workerId, Inte ...

  5. jsp中的@include与jsp:include区别详解

    1 前言 搞java开发的人也许都知道在jsp中引入项目中其他文件有如下两种方式 <%@include file="xxx.jsp"%> <jsp:include ...

  6. JSP中编译指令include与动作指令include的区别

    include指令是编译阶段的指令,即include所包含的文件的内容是编译的时候插入到JSP文件中,JSP引擎在判断JSP页面未被修改, 否则视为已被修改.由于被包含的文件是在编译时才插入的,因此如 ...

  7. C/C++ 中的include

    当需要使用已有的方法或库时, 可以将它们的头文件#include进来. #include会在preprocess过程中被替换成它包含的代码. 头文件中包含了需要使用的函数/变量的声明. 当然声明与定义 ...

  8. 织梦多语言站点,{dede:include filename=''/}引入问题

    织梦模板include插入非模板目录文件出现"无法在这个位置找到"错误的解决办法 以下是dede V55_UTF8 查dede include标签手册 (3) include 引入 ...

  9. PHP 站点相对包含,路径的问题解决方法(include,require)

    以前看了,很多框架,基本上很少使用相对路径包含.而一般很多做php web站点,喜欢用相对路径. 认为这样,无论目录放到那里. 只要跟另外目录关系一致.那么就不会出现问题.如果一个站点,一般都认为,如 ...

  10. 如何让include标签包裹的布局置于屏幕最下方?

    如何让一个Layout 始终在屏幕的下方 我想让<include layout="@layout/bottom" />一直在屏幕下,怎么做? 1.相对布局中用属性  a ...

随机推荐

  1. Container With Most Water 解答

    Question Given n non-negative integers a1, a2, ..., an, where each represents a point at coordinate ...

  2. [每日一题] 11gOCP 1z0-052 :2013-09-25 Lock ――for update.................................C23

    转载请注明出处:http://blog.csdn.net/guoyjoe/article/details/12021587 正确答案:ABE 这道题需要我们了解锁的知识点. TM锁的模式: 0-Non ...

  3. Linux中shell文件操作大全

    1.创建文件夹#!/bin/shmkdir -m 777 "%%1" 2.创建文件#!/bin/shtouch "%%1" 3.删除文件#!/bin/shrm ...

  4. IBatis——(一)

    IBatis是持久层的框架,也就是我们说的Dao层框架,关注数据库操作以及和Java对象之间的关联,我们将这样的框架也称之为ORM(Object/Relaction Mapping)框架.而这里映射的 ...

  5. 【Heritrix基础教程之3】Heritrix的基本架构

    Heritrix可分为四大模块: 1.控制器CrawlController 2.待处理的uri列表  Frontier 3.线程池 ToeThread 4.各个步骤的处理器 (1)Pre-fetch ...

  6. zTree实现清空选中的第一个节点的子节点

    zTree实现清空选中的第一个节点的子节点 1.实现源代码 <!DOCTYPE html> <html> <head> <title>zTree实现基本 ...

  7. bootstrap之Flick

    Flick package io.appium.android.bootstrap.handler; import com.android.uiautomator.core.UiDevice; imp ...

  8. Android应用程序组件Content Provider简要介绍和学习计划

    文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/6946067 在Android系统中,Conte ...

  9. sublime text 3 快捷键大全以及配置编译环境(转)

    Sublime text 3是码农最喜欢的代码编辑器,每天和代码打交道,必先利其器,掌握基本的代码编辑器的快捷键,能让你打码更有效率.刚开始可能有些生疏,只要花一两个星期 坚持使用并熟悉这些常用的快捷 ...

  10. java二维码之利用谷歌的zxing生成二维码,解析二维码

    生成二维码 @RequestMapping("/123") public void test(HttpServletRequest request,HttpServletRespo ...