首页 > 其他分享 >list容器

list容器

时间:2023-12-06 22:11:21浏览次数:24  
标签:容器 printList list back --- push

3.7.4 list 大小操作

功能描述:

  • 对list容器的大小进行操作

 

函数原型:

  • size(); //返回容器中元素的个数

  • empty(); //判断容器是否为空

  • resize(num); //重新指定容器的长度为num,若容器变长,则以默认值填充新位置。

    //如果容器变短,则末尾超出容器长度的元素被删除。

  • resize(num, elem); //重新指定容器的长度为num,若容器变长,则以elem值填充新位置。

    //如果容器变短,则末尾超出容器长度的元素被删除。

 

示例:

#include <list>

void printList(const list<int>& L) {

for (list<int>::const_iterator it = L.begin(); it != L.end(); it++) {
cout << *it << " ";
}
cout << endl;
}

//大小操作
void test01()
{
list<int>L1;
L1.push_back(10);
L1.push_back(20);
L1.push_back(30);
L1.push_back(40);

if (L1.empty())
{
cout << "L1为空" << endl;
}
else
{
cout << "L1不为空" << endl;
cout << "L1的大小为: " << L1.size() << endl;
}

//重新指定大小
L1.resize(10);
printList(L1);

L1.resize(2);
printList(L1);
}

int main() {

test01();

system("pause");

return 0;
}

总结:

  • 判断是否为空 --- empty

  • 返回元素个数 --- size

  • 重新指定个数 --- resize

 

 

 

 

 

3.7.5 list 插入和删除

功能描述:

  • 对list容器进行数据的插入和删除

 

函数原型:

  • push_back(elem);//在容器尾部加入一个元素

  • pop_back();//删除容器中最后一个元素

  • push_front(elem);//在容器开头插入一个元素

  • pop_front();//从容器开头移除第一个元素

  • insert(pos,elem);//在pos位置插elem元素的拷贝,返回新数据的位置。

  • insert(pos,n,elem);//在pos位置插入n个elem数据,无返回值。

  • insert(pos,beg,end);//在pos位置插入[beg,end)区间的数据,无返回值。

  • clear();//移除容器的所有数据

  • erase(beg,end);//删除[beg,end)区间的数据,返回下一个数据的位置。

  • erase(pos);//删除pos位置的数据,返回下一个数据的位置。

  • remove(elem);//删除容器中所有与elem值匹配的元素。

 

 

示例:

#include <list>

void printList(const list<int>& L) {

for (list<int>::const_iterator it = L.begin(); it != L.end(); it++) {
cout << *it << " ";
}
cout << endl;
}

//插入和删除
void test01()
{
list<int> L;
//尾插
L.push_back(10);
L.push_back(20);
L.push_back(30);
//头插
L.push_front(100);
L.push_front(200);
L.push_front(300);

printList(L);

//尾删
L.pop_back();
printList(L);

//头删
L.pop_front();
printList(L);

//插入
list<int>::iterator it = L.begin();
L.insert(++it, 1000);
printList(L);

//删除
it = L.begin();
L.erase(++it);
printList(L);

//移除
L.push_back(10000);
L.push_back(10000);
L.push_back(10000);
printList(L);
L.remove(10000);
printList(L);
   
   //清空
L.clear();
printList(L);
}

int main() {

test01();

system("pause");

return 0;
}

总结:

  • 尾插 --- push_back

  • 尾删 --- pop_back

  • 头插 --- push_front

  • 头删 --- pop_front

  • 插入 --- insert

  • 删除 --- erase

  • 移除 --- remove

  • 清空 --- clear

  •  

 

标签:容器,printList,list,back,---,push
From: https://www.cnblogs.com/muzhaodi/p/17880659.html

相关文章

  • 无涯教程-Erlang - tuple_to_list函数
    此方法将元组转换为列表。tuple_to_list-语法tuple_to_list(list)list - 这是需要转换为列表的元组。tuple_to_list-返回值根据提供的元组返回一个列表。-module(helloLearnfk).-export([start/0]).start()->io:fwrite("~w",[tuple_to_list({1,2,3})]).......
  • 无涯教程-Erlang - list_to_tuple函数
    此方法是将列表转换为元组。list_to_tuple-语法list_to_tuple(list)list - 这是需要转换为元组的列表。list_to_tuple-返回值根据提供的列表返回一个元组。-module(helloLearnfk).-export([start/0]).start()->io:fwrite("~w",[list_to_tuple([1,2,3])])......
  • 第2章. 链表(LinkedList)
    链表链表是一种链式存储的线性表,所有元素的内存地址不一定是连续的。单向链表一、单向链表的设计1.1、不带虚拟头结点publicclassLinkedList<E>{//链表的节点数量privateintsize;//链表的头结点privateNode<E>first;//静态成员内部类:s......
  • 第1章. 动态数组(ArrayList)
    动态数组一、动态数组接口设计//这里可以写一个List接口,然后ArrayList类去实现这个接口,实现接口中的方法。但为了方便起见,直接将这些方法写在类中。//这些方法暂时不添加泛型、和正确的返回值publicclassArrayList{//动态数组的长度privateintsize;......
  • Todo List
    TodoList2022-11-09编写圣诞节活动接口文档3Ds自动续费相关问题后管重启后菜单查不到用户列表sonarQube集成git泰国CU消息通知开发2022-11-10编写圣诞节活动接口文档......
  • 无涯教程-Erlang - list_to_atom函数
    此方法用于将列表项转换为原子。list_to_atom-语法list_to_atom(listvalue)listvalue - 这是需要转换为原子的列表值。list_to_atom-返回值基于列表值输入的原子。-module(helloLearnfk).-export([start/0]).start()->io:fwrite("~p~n",[list_to_atom("a......
  • docker-compose运行的容器 curl No route to host
    #信任docker0网卡firewall-cmd--permanent--zone=trusted--change-interface=docker0&&firewall-cmd--reloaddockernetworkinspectcsrpmed_default#找出默认网段w为172.20.0.0/16[{"Name":"csrpmed_default","Id&quo......
  • 定时清理docker容器日志
    场景:docker容器启用一段时间之后日志会逐渐累积,越来越臃肿,可能高达几十个G,我们需要定期自动清理此容器日志1.创建文件夹,创建文件写入命令,更改可执行权限:mkdir-p/opt/docker-shcat>/opt/docker-sh/clean_docker_log.sh<<EOF#!/bin/shecho"========startclean......
  • 一、Spring学习 : 容器---->BeanFactory+ApplicationContext 的多种容器实现
    BeanFactory实现的特点我们来着重讲一下DefaultListableBeanFactory这个实现类:点击查看完整代码packagecom.itvayne.springbootcloudstudy.beanfactory01;importcom.sun.org.slf4j.internal.Logger;importcom.sun.org.slf4j.internal.LoggerFactory;importorg.springf......
  • 2023 - LauraHughes - A Novel Method to Determine Probabilistic Tsunami Hazard Us
    概要这篇文章主要讨论了使用基于物理的合成地震目录进行海啸危险评估的首次尝试,并展示了在新西兰海岸附近,近场地震海啸可以产生高达28米的最大海浪高度。文章介绍了使用CornellMulti-gridCoupledTsunami模型(COMCOT)进行海啸生成和传播模拟的方法,并对模拟结果进行了分析。文章还......