C++拼接方法splice
splice的功能: 将B序列中[b1, b2) 范围内的元素抽调到A序列中的a位置,这个抽调的过程中,A的长度增加了,B的长度减少了。
splice有四个参数,用法:A.splice(a, B, b1, b2)
以下是一个小示例:实现将 l1 的后几个元素和 l2 的后几个元素对调(里面为什么会用到第三方temp可以思考一下)
#include<iostream>
#include<iterator>
#include<list>
using namespace std;template<class T>
void exchange(list<T>& l1, class list<T>::iterator p1, list<T>& l2, class list<T>::iterator p2){list<T> temp;temp.splice(temp.begin(), l1, p1, l1.end());l1.splice(l1.end(), l2, p2, l2.end());l2.splice(l2.end(), temp, temp.begin(), temp.end());
}typedef list<int> intlist; int main(){intlist a, b;for(int i = 0; i < 6; i++){a.push_back(i * 2 + 1);b.push_back(i * 3 + 2);}cout<<"a: ";copy(a.begin(), a.end(), ostream_iterator<int>(cout, " "));cout<<endl;cout<<"b: ";copy(b.begin(), b.end(), ostream_iterator<int>(cout, " "));cout<<endl;cout<<"after exchanging..."<<endl;intlist::iterator p1 = a.begin();advance(p1, 3);intlist::iterator p2 = b.begin();advance(p2, 4);exchange(a, p1, b, p2);cout<<"a: ";copy(a.begin(), a.end(), ostream_iterator<int>(cout, " "));cout<<endl;cout<<"b: ";copy(b.begin(), b.end(), ostream_iterator<int>(cout, " "));cout<<endl;return 0;
}
C++拼接方法splice相关推荐
- 自己写的Python数据库连接类和sql语句拼接方法
这个工具类十分简单和简洁. sql拼接方法 # encoding=utf-8 from django.http import HttpResponse from anyjson import seri ...
- Python里面数组拼接方法介绍
numpy数组拼接方法介绍 转载来源:https://blog.csdn.net/zyl1042635242/article/details/43162031 数组拼接方法一 思路:首先将数组转成列表 ...
- python怎么和sql一起用_自己写的Python数据库连接类和sql语句拼接方法
这个工具类十分简单和简洁. sql拼接方法 # encoding=utf-8 from django.http import HttpResponse from anyjson import seri ...
- java反射 动态调用_java反射拼接方法名动态执行方法
近期由于负责项目的一个模块,该模块下有很多分类,每个分类都有一个编码code,这个值是作为一个参数携带过来的.但是每个code确实对应一个方法的. code的值有很多个,自己又不想做ifelse或者s ...
- matlab不规则碎片拼接,一种不规则破碎单面图像快速拼接方法
一种不规则破碎单面图像快速拼接方法 [专利摘要]本发明的一种不规则破碎单面图像快速拼接方法,是首先将不规则破碎的单面图像碎片扫描成数字图像,然后获取每个图像碎片边缘的逆时针像素灰度值序列,通过计算各个 ...
- Go语言中的字符串拼接方法介绍
本文介绍Go语言中的string类型.strings包和bytes.Buffer类型,介绍几种字符串拼接方法. 目录 string类型 strings包 strings.Builder类型 strin ...
- 技巧3 vue3项目 axios前后端交互 图片地址拼接方法
一般来说图片有两种存储方式: 1.后端传完整在线地址 列表项img是一个完整地图片在线地址(https://www.xxx/img/1.jpg),后端传过来数组前端直接读取即可,img的url可以直接 ...
- mysql数据库,oracle数据库中对字段的拼接方法
mysql数据库,oracle数据库中对字段的拼接方法 1.简介 在日常开发中,常常有将多个字段拼接进行sql操作的场景,比如做模糊查询,我这里分两种环境阐述:1.在数据库中的写法:2.在mybati ...
- IAP+APP程序拼接方法
IAP+APP程序拼接方法 前言 理解bin.hex.axf IAP+APP拼接方法 bin.hex文件互相转换 前言 不清楚什么是IAP的可以看下我的这篇博客STM32的ISP下载原理,里面介绍了I ...
最新文章
- leetcode 237: Delete Node in a Linked List
- 【原创】关于代码质量的打油诗
- data lab 1(暂时只放题目)
- android自定义属性的使用
- Thinkphp5.0快速入门笔记(3)
- mysql中blog数据_zp blog
- JavaScript内置对象Date----格式化时间
- Android找工作系列之自定义View
- android 坐标绘图 缩放,在缩放/缩小或拖放到Android后获取画布坐标
- Apache Cassandra和Apache Ignite:分布式数据库的明智之选
- Non-parseable POM C:\Users\admin\.m2\repository\org\springframework问题解决方案
- c语言回调函数构架程序,c语言函数回调函数回调
- wap建站程序源码_角点科技:企业搭建网站选择建站公司需要注意什么?
- 马斯克的“半机械人”还没出现,这位日本少年却已经可以让你变身“半机械人”了...
- easyui 隐藏input_Easyui-Datebox设置隐藏或者不可用如何解决
- Cython优化简介
- Visual Studio 2017卸载不干净
- 用Python实现斗地主游戏(终端版)
- android中小火箭动态喷射动画的简单实现
- 统计单词个数———有穷状态机编程