C++之list
C++之list
list的构造
#include <iostream>
#include<list>
using namespace std;//打印函数
void printfList(const list<int>&L)
{for(list<int>::const_iterator it = L.begin();it != L.end();it++){cout<<*it<<" ";}cout<<endl;
}
//list容器的构造函数
void test()
{//创建list容器list<int>L1;//默认构成//添加元素L1.push_back(10);L1.push_back(20);L1.push_back(30);L1.push_back(40);//遍历打印输出printfList(L1);//区间构造list<int>L2(L1.begin(),L1.end());printfList(L2);//n个元素构造list<int>L3(4,100);printfList(L3);//拷贝构造list<int>L4(L2);printfList(L4);
}int main()
{test();cout << "Hello World!" << endl;return 0;
}
list赋值和交换
#include <iostream>
#include<list>
using namespace std;//打印函数
void printfList(const list<int>&L)
{for(list<int>::const_iterator it = L.begin();it != L.end();it++){cout<<*it<<" ";}cout<<endl;
}
//list容器的赋值和交换
void test()
{//创建list容器list<int>L1;//默认构成//添加元素L1.push_back(10);L1.push_back(20);L1.push_back(30);L1.push_back(40);//遍历打印输出printfList(L1);//赋值list<int>L2;L2 = L1;//operator =printfList(L2);list<int>L3;L3.assign(L2.begin(),L2.end());printfList(L3);list<int>L4;L4.assign(4,100);printfList(L4);}int main()
{test();cout << "Hello World!" << endl;return 0;
}
#include <iostream>
#include<list>
using namespace std;//打印函数
void printfList(const list<int>&L)
{for(list<int>::const_iterator it = L.begin();it != L.end();it++){cout<<*it<<" ";}cout<<endl;
}
//list容器的赋值和交换
void test()
{cout<<"交换前"<<endl;//创建list容器list<int>L1;//默认构成//添加元素L1.push_back(10);L1.push_back(20);L1.push_back(30);L1.push_back(40);//遍历打印输出printfList(L1);list<int>L4;L4.assign(4,100);printfList(L4);cout<<"交换后"<<endl;L1.swap(L4);printfList(L1);printfList(L4);
}int main()
{test();cout << "Hello World!" << endl;return 0;
}
list的大小操作
#include <iostream>
#include<list>
using namespace std;//打印函数
void printfList(const list<int>&L)
{for(list<int>::const_iterator it = L.begin();it != L.end();it++){cout<<*it<<" ";}cout<<endl;
}
//list容器
void test()
{//创建list容器list<int>L1;//默认构成//添加元素L1.push_back(10);L1.push_back(20);L1.push_back(30);L1.push_back(40);//遍历打印输出printfList(L1);//判断是否为空if(L1.empty()){cout<<"L1 is empty"<<endl;}else{cout<<"L1 is not empty"<<endl;cout<<"L1's size is "<<L1.size()<<endl;}//重新指定大小L1.resize(10,100);printfList(L1);L1.resize(2);printfList(L1);
}int main()
{test();cout << "Hello World!" << endl;return 0;
}
list插入和删除
#include <iostream>
#include<list>
using namespace std;//打印函数
void printfList(const list<int>&L)
{for(list<int>::const_iterator it = L.begin();it != L.end();it++){cout<<*it<<" ";}cout<<endl;
}
//list容器
void test()
{//创建list容器list<int>L1;//默认构成//尾插L1.push_back(10);L1.push_back(20);L1.push_back(30);L1.push_back(40);//头插L1.push_front(100);L1.push_front(200);L1.push_front(300);L1.push_front(400);//遍历打印输出printfList(L1);//尾删L1.pop_back();printfList(L1);//头删L1.pop_front();printfList(L1);//插入list<int>::iterator it=L1.begin();L1.insert(++it,1000);printfList(L1);//删除it = L1.begin();L1.erase(++it);printfList(L1);//移除L1.push_back(10000);L1.push_back(10000);L1.push_back(10000);L1.push_back(10000);printfList(L1);L1.remove(10000);printfList(L1);//清空L1.clear();printfList(L1);}int main()
{test();cout << "Hello World!" << endl;return 0;
}
list数据存取
#include <iostream>
#include<list>
using namespace std;//打印函数
void printfList(const list<int>&L)
{for(list<int>::const_iterator it = L.begin();it != L.end();it++){cout<<*it<<" ";}cout<<endl;
}
//list容器
void test()
{//创建list容器list<int>L1;//默认构成//尾插L1.push_back(10);L1.push_back(20);L1.push_back(30);L1.push_back(40);//遍历打印输出printfList(L1);cout<<"第一个元素为:"<<L1.front()<<endl;cout<<"最后一个元素:"<<L1.back()<<endl;}int main()
{test();cout << "Hello World!" << endl;return 0;
}
list反转和排序
#include <iostream>
#include<list>
using namespace std;//打印函数
void printfList(const list<int>&L)
{for(list<int>::const_iterator it = L.begin();it != L.end();it++){cout<<*it<<" ";}cout<<endl;
}bool MyCompare(int v1,int v2)
{//降序就是让第一个数大于第二个数 V1>V2return v1>v2;
}//list容器
void test()
{//创建list容器list<int>L1;//默认构成//尾插L1.push_back(50);L1.push_back(20);L1.push_back(10);L1.push_back(40);cout<<"反转前:"<<endl;//遍历打印输出printfList(L1);L1.reverse();cout<<"反转后:"<<endl;printfList(L1);//排序cout<<"排序前:"<<endl;printfList(L1);//所有不支持随机访问迭代器的容器,不可以用标准算法//不支持随机访问迭代器的容器,内部会提供对应一些算法//sort(L1. begin(), L1.end()) ;L1.sort();//默认是升序cout<<"排序后:"<<endl;printfList(L1);L1.sort(MyCompare);//降序cout<<"排序后:"<<endl;printfList(L1);}int main()
{test();cout << "Hello World!" << endl;return 0;
}
相关文章:

C++之list
C之list list的构造 #include <iostream> #include<list> using namespace std;//打印函数 void printfList(const list<int>&L) {for(list<int>::const_iterator it L.begin();it ! L.end();it){cout<<*it<<" ";}cout<…...

C语言日记——调试篇
一、调试调试的基本步骤 发现程序错误的存在 以隔离、消除等方式对错误进行定位 确定错误产生的原因 提出纠正错误的解决办法 对程序错误予以改正,重新测试 二、Debug和Release Debug通常称为调试版本,它包含调试信息,并且不作任何优化…...

【python】Django——templates模板、静态文件、django模板语法、请求和响应
笔记为自我总结整理的学习笔记,若有错误欢迎指出哟~ 【Django专栏】 Django——django简介、django安装、创建项目、快速上手 Django——templates模板、静态文件、django模板语法、请求和响应 Django——连接mysql数据库 Django——templates模板、静态文件、djang…...
Android设计模式--观察者模式
时间是一只藏在黑暗中温柔的手,在你一出神一恍惚之间,物走星移 一,定义 观察者模式是定义对象间一种一对多的依赖关系,使得每当一个对象改变状态,则所有依赖于它的对象都会得到通知并被自动更新 字面意思很好理解&am…...

【Linux】Ubuntu16.04下安装python高版本--源码安装
Ubuntu16.04下完美安装python高版本及对应版本的pip 方法一:直接用命令安装python3.6(但我没安装成功) 好像是因为Ubuntu16.04的软件仓库(源)中python的最高版本就是python3.5,所以无法直接用apt来安装 #方法一 sudo…...

变长子网划分问题的二叉树解法
计网的变长子网划分、计组的变长操作码划分、数据结构的哈夫曼编码,都是前缀编码的本质(变长操作码的二叉树解法我还在琢磨中) 【二叉树解法】每条从叶结点到根节点的路径上有且只有一个被分配的结点: 【例】现将一个IP网络划分成…...

编译安装redis及配置多实例
yum安装是这种十分简单的方法我们就不在提及了,今天我们来做一下redis的编译安装 Redis源码包官方下载链接:http://download.redis.io/releases/ 一、编译安装: 安装依赖包 dnf -y install make gcc jemalloc-devel systemd-devel如果是…...
网络(一)总纲
一 总纲 ① 背景 1、该资料不管是在华为内部还是外部都是很出名的2、该教程仅仅作为个人笔记,形成自己的网络知识体系,自己会按照教程手把手做实验,copy图谱备注: 自己没有处理过物理网和虚拟网,所以会以一个小白的角度去理解,可能存在偏差3、立足点:…...
WPF中的App类介绍
在WPF (Windows Presentation Foundation) 应用程序中,App 类扮演着很重要的角色。这个类通常在每个WPF应用程序中都会有,并且生成在App.xaml文件和其代码后台App.xaml.cs中。App类通常继承自System.Windows.Application类,并且有以下的主要职…...

.nc格式文件的显示及特殊裁剪方式
最近我们遇到一个nc格式的文件,需要将它做成报告插图,bing搜索一番以后,了解到nc的全名为NetCDF(network Common Data Form),是一种网络通用数据格式,广泛用于大气科学、水文、海洋学、环境模拟、地球物理等诸多领域。…...
为什么需要线程池?C++如何实现一个线程池?
为什么需要线程池?C如何实现一个线程池? 为什么需要线程池?C如何实现一个线程池?...

多视图聚类的论文阅读
当聚类的方式使用的是某一类预定义好的相似性度量时, 会出现如下情况: 数据聚类方面取得了成功,但它们通常依赖于预定义的相似性度量,而这些度量受原始方法的影响:当输入维数相对较高时,往往是无效的。 1. Deep Mult…...
shell脚本适用场景
1.适用场景 Shell脚本是一种用于自动化和批量处理任务的脚本语言。它通常在Unix/Linux系统中使用,并且被广泛应用于各种场景,包括但不限于以下几个方面: 自动化任务:Shell脚本可以用于编写自动化脚本,完成一系列重复性…...
Bash openldap同步AD组织数据
将AD的ou同步到openldap(可支持全量同步和增量同步) 整体思路如下: 从ad导出所有的数据,然后进行参数替换以及处理,处理后的文件称为A;从openldap导出所有的数据,然后进行参数替换以及处理&am…...

C#WPF文本转语音实例
本文介绍C#WPF文本转语音实例 实现方法:使用类库(SpeechSynthesizer )实现的。 一、首先是安装程序包。 二、创建项目 需要添加引用using System.Speech.Synthesis; UI界面 <Windowx:Class="TextToSpeechDemo.MainWindow"xmlns="http://schemas.micr…...
08-流媒体-RTMP拉流
整体方案: 采集端:摄像头采集(YUV)->编码(YUV转H264)->写封装(H264转FLV)->RTMP推流 客户端:RTMP拉流->解封装(FLV转H264)…...

一键免费去除视频水印和字幕的AI工具
最近有学员经常让我分享好用的智能抹除视频水印字幕AI工具,今天就给大家分享一个我经常用到的这款工具——腾讯智影,这个平台提供的智能抹除功能,借助这个工具我们可以将视频中不需要的字幕或者水印删除掉。 不过这款工具每天有三次免费次数…...

实验六:Android的网络编程基础
实验六:Android 的网络编程基础 6.1 实验目的 本次实验的目的是让大家熟悉 Android 开发中的如何获取天气预报,包括了 解和熟悉 WebView、WebService 使用、网络编程事件处理等内容。 6.2 实验要求 熟悉和掌握 WebView 使用 了解 Android 的网络编程…...
09-流媒体-FLV解复用
整体方案: 采集端:摄像头采集(YUV)->编码(YUV转H264)->写封装(H264转FLV)->RTMP推流 客户端:RTMP拉流->解封装(FLV转H264)…...
信息的浏览
万维网(WWW)是目前Internet上最流行的一种服务,它是建立在Internet上的多媒体集合信息系统。它利用超媒体的信息获取技术,通过一种超文本的表达方式,将所有WWW上的信息连接在一起。我们使用浏览器浏览网上的信息。 ▶浏览器 浏览器是指可以…...

TDengine 快速体验(Docker 镜像方式)
简介 TDengine 可以通过安装包、Docker 镜像 及云服务快速体验 TDengine 的功能,本节首先介绍如何通过 Docker 快速体验 TDengine,然后介绍如何在 Docker 环境下体验 TDengine 的写入和查询功能。如果你不熟悉 Docker,请使用 安装包的方式快…...

shell脚本--常见案例
1、自动备份文件或目录 2、批量重命名文件 3、查找并删除指定名称的文件: 4、批量删除文件 5、查找并替换文件内容 6、批量创建文件 7、创建文件夹并移动文件 8、在文件夹中查找文件...
从零实现富文本编辑器#5-编辑器选区模型的状态结构表达
先前我们总结了浏览器选区模型的交互策略,并且实现了基本的选区操作,还调研了自绘选区的实现。那么相对的,我们还需要设计编辑器的选区表达,也可以称为模型选区。编辑器中应用变更时的操作范围,就是以模型选区为基准来…...
Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信
文章目录 Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信前言一、网络通信基础概念二、服务端与客户端的完整流程图解三、每一步的详细讲解和代码示例1. 创建Socket(服务端和客户端都要)2. 绑定本地地址和端口&#x…...
LangChain知识库管理后端接口:数据库操作详解—— 构建本地知识库系统的基础《二》
这段 Python 代码是一个完整的 知识库数据库操作模块,用于对本地知识库系统中的知识库进行增删改查(CRUD)操作。它基于 SQLAlchemy ORM 框架 和一个自定义的装饰器 with_session 实现数据库会话管理。 📘 一、整体功能概述 该模块…...
十九、【用户管理与权限 - 篇一】后端基础:用户列表与角色模型的初步构建
【用户管理与权限 - 篇一】后端基础:用户列表与角色模型的初步构建 前言准备工作第一部分:回顾 Django 内置的 `User` 模型第二部分:设计并创建 `Role` 和 `UserProfile` 模型第三部分:创建 Serializers第四部分:创建 ViewSets第五部分:注册 API 路由第六部分:后端初步测…...
Java求职者面试指南:Spring、Spring Boot、Spring MVC与MyBatis技术解析
Java求职者面试指南:Spring、Spring Boot、Spring MVC与MyBatis技术解析 一、第一轮基础概念问题 1. Spring框架的核心容器是什么?它的作用是什么? Spring框架的核心容器是IoC(控制反转)容器。它的主要作用是管理对…...
ubuntu22.04 安装docker 和docker-compose
首先你要确保没有docker环境或者使用命令删掉docker sudo apt-get remove docker docker-engine docker.io containerd runc安装docker 更新软件环境 sudo apt update sudo apt upgrade下载docker依赖和GPG 密钥 # 依赖 apt-get install ca-certificates curl gnupg lsb-rel…...
起重机起升机构的安全装置有哪些?
起重机起升机构的安全装置是保障吊装作业安全的关键部件,主要用于防止超载、失控、断绳等危险情况。以下是常见的安全装置及其功能和原理: 一、超载保护装置(核心安全装置) 1. 起重量限制器 功能:实时监测起升载荷&a…...
深度解析云存储:概念、架构与应用实践
在数据爆炸式增长的时代,传统本地存储因容量限制、管理复杂等问题,已难以满足企业和个人的需求。云存储凭借灵活扩展、便捷访问等特性,成为数据存储领域的主流解决方案。从个人照片备份到企业核心数据管理,云存储正重塑数据存储与…...