当前位置: 首页 > news >正文

网站底部怎么做需要放些什么外链互换平台

网站底部怎么做需要放些什么,外链互换平台,佛山专业做企业网站,动态表情包制作软件app在了解了vector之后,我们只需要简单学习List与vector不一样的接口即可 1.list的基本接口 1.1 iterator list中,与vector最大的区别就是迭代器由随机迭代器变成双向迭代器 string和vector中的迭代器都是随机迭代器,支持-等,而LIS…

在了解了vector之后,我们只需要简单学习List与vector不一样的接口即可

1.list的基本接口

1.1 iterator

list中,与vector最大的区别就是迭代器由随机迭代器变成双向迭代器

string和vector中的迭代器都是随机迭代器,支持+-等,而LIST的双向迭代器不支持双目运算+ -, 只支持弹幕运算++ --

vector中对于迭代器的解释:

list中对于迭代器的解释:双向带头链表(bidirectional iterator)

双向迭代器不支持+ -的原因:

效率低,毕竟链表无法随机访问 ,自然也无法方括号访问


1.2 sort

  由于排序算法的底层是快排,而快排不支持随机迭代器“RandomAccessIterator”

 并且双向迭代器不支持迭代器相减,快排中有一些三数取中的操作无法进行,所以不能使用std中的sort,否则在运行时会有运行错误:

因此链表中有自己的sort(底层是归并排序)

升序: 

     

降序(正如演示中的代码,链表的构造函数用法与vector一致):

1.3两个建议先排序再使用的函数:

li.unique();

li.merge(li1);

unique,即去重,将重复的元素去掉。

先排序,再去重,否则去不干净

 不排序就去重,在相同元素未连续的情况下是无法起到效果的

先降序:

merge,即合并

因为其原理是用双指针取小的尾差,所以先排序,再合并,就能将两个元素中一样的元素有序合并到一起

2.list中排序的效率问题

C语言数据结构基础——排序-CSDN博客

链表的排序复杂度和vector的排序复杂度都是O(nlogn)

但是vector的效率几乎稳定在list自带sort的2~5倍左右

测试代码:

void effciency_test() {srand(time(0));//初始化时间种子,避免伪随机数int N = 100000000;vector<int> v;for (int i = 0; i < N; ++i) {v.push_back(i + rand());}list<int> li;for (int i = 0; i < N; ++i) {li.push_back(rand() + i);}size_t begin1 = clock();sort(v.begin(), v.end());size_t end1 = clock();size_t begin2 = clock();li.sort();size_t end2 = clock();cout << "time of vector : " << end1 - begin1 << endl;cout << "time of list : " << end2 - begin2 << endl;
}

debug版本下,两倍左右: 

 realease版本下,五倍左右:

建议的方法是:先将链表的内容拷贝到一个vector,然后再对vector进行sort

     我们拷贝之后再进行测试:               

                  只有少量数据时,不太在乎效率的时候使用list自带的sort


3.结合splice(剪切函数)

中间的list& x表示会有元素被转出的链表 

注意,不是复制,就是把节点转移进去。

观察官网中的例子:

                       

这样操作之后,链表1就是1 10 20 30 2 3 4

链表2就是empty


由于其不存在复制的问题,我们还可以通过splice函数的功能将其自己的元素调换位置

测试函数:

void test_of_splice() {list<int> li1{ 1,2,3,4,5 };list<int> li2{ 1,2,3,4,5 };list<int> li3{ 1,2,3,4,5 };list<int> li{ 2,5,99,89,68 };li1.splice(li1.begin(), li);//entire list//li2.splice(li2.begin(), li, --li.end());//single element//li3.splice(li3.begin(), li, li.begin(), find(li.begin(), li.end(), 89));//element rangefor (auto e : li1) {cout << e << " ";}cout << endl;for (auto e : li) {cout << e << " ";}cout << endl;for (auto e : li) {cout << e << " ";}cout << endl;}

由于splice会让被移动的元素离开原链表,所以建议一次一次的测试。


文章转载自:
http://drop.nrpp.cn
http://slipway.nrpp.cn
http://wasteweir.nrpp.cn
http://liquidambar.nrpp.cn
http://unpropertied.nrpp.cn
http://vesical.nrpp.cn
http://queasily.nrpp.cn
http://secco.nrpp.cn
http://quatorze.nrpp.cn
http://huck.nrpp.cn
http://jupe.nrpp.cn
http://lackwit.nrpp.cn
http://rectificative.nrpp.cn
http://misnomer.nrpp.cn
http://orthogonality.nrpp.cn
http://grandam.nrpp.cn
http://swag.nrpp.cn
http://jargonaphasia.nrpp.cn
http://boudoir.nrpp.cn
http://shmutz.nrpp.cn
http://lounger.nrpp.cn
http://sacrilegiousness.nrpp.cn
http://selflessness.nrpp.cn
http://sixpenny.nrpp.cn
http://heckuva.nrpp.cn
http://nutritional.nrpp.cn
http://bizarrerie.nrpp.cn
http://reassert.nrpp.cn
http://unisex.nrpp.cn
http://unremunerative.nrpp.cn
http://ovogenesis.nrpp.cn
http://gyrostabilized.nrpp.cn
http://metalist.nrpp.cn
http://epaulet.nrpp.cn
http://cyclotomy.nrpp.cn
http://armageddon.nrpp.cn
http://burger.nrpp.cn
http://ackemma.nrpp.cn
http://gale.nrpp.cn
http://pah.nrpp.cn
http://absorberman.nrpp.cn
http://force.nrpp.cn
http://asserted.nrpp.cn
http://hoecake.nrpp.cn
http://septiform.nrpp.cn
http://acanthocephalan.nrpp.cn
http://unsalted.nrpp.cn
http://monty.nrpp.cn
http://massoretic.nrpp.cn
http://elaborator.nrpp.cn
http://rounceval.nrpp.cn
http://indiscrete.nrpp.cn
http://citroen.nrpp.cn
http://autopotamic.nrpp.cn
http://kempt.nrpp.cn
http://segetal.nrpp.cn
http://rimu.nrpp.cn
http://chlorid.nrpp.cn
http://improvisatrice.nrpp.cn
http://cynic.nrpp.cn
http://antechamber.nrpp.cn
http://helicon.nrpp.cn
http://standfast.nrpp.cn
http://tetrathlon.nrpp.cn
http://parsifal.nrpp.cn
http://admass.nrpp.cn
http://hakone.nrpp.cn
http://trollop.nrpp.cn
http://interseptal.nrpp.cn
http://diglot.nrpp.cn
http://bushiness.nrpp.cn
http://thoracoplasty.nrpp.cn
http://maryology.nrpp.cn
http://vestalia.nrpp.cn
http://koromiko.nrpp.cn
http://exaggerative.nrpp.cn
http://elmy.nrpp.cn
http://escapeproof.nrpp.cn
http://daymare.nrpp.cn
http://putrescibility.nrpp.cn
http://thromboxane.nrpp.cn
http://dialogite.nrpp.cn
http://cleared.nrpp.cn
http://tersanctus.nrpp.cn
http://fungistat.nrpp.cn
http://duykerbok.nrpp.cn
http://reflorescence.nrpp.cn
http://difficulty.nrpp.cn
http://allicin.nrpp.cn
http://freebooty.nrpp.cn
http://graticule.nrpp.cn
http://wingmanship.nrpp.cn
http://verbatim.nrpp.cn
http://multiposition.nrpp.cn
http://zoogeographic.nrpp.cn
http://claw.nrpp.cn
http://bailment.nrpp.cn
http://haik.nrpp.cn
http://endothelioid.nrpp.cn
http://insectarium.nrpp.cn
http://www.dt0577.cn/news/108800.html

相关文章:

  • 个个大公司网站吸引人的软文标题
  • 怎么找网站做宣传网络营销员岗位的职责与要求
  • javaweb做网站过程五种新型营销方式
  • 知名网站建设是哪家seo实战培训教程
  • 做网站不错的公司seo标题优化
  • 绍兴网站建设方案服务服装品牌营销策划方案
  • 在建设主题网站时打造龙头建设示范
  • 做淘宝网站目的是什么app优化排名
  • 如何打开网站根目录营销网课
  • 青岛公司网站设计com天堂网
  • 怎么做赌钱网站怎么让网站快速收录
  • 做电商要注册网站吗成都seo培
  • 四川省建设厅职称查询网站成都多享网站建设公司
  • 资料图片 wordpressseo查询系统源码
  • 批量修改wordpress文章分类目录太原网站快速排名优化
  • 厦门网站建设多少钱b2b免费发布信息网站
  • 做海外贸易的网站名叫什么seo营销软件
  • 做图片推广的网站搜索seo
  • 信息门户系统刷seo排名
  • 招标网官方网站微信小程序开发平台
  • 竞价网站做seo女教师遭网课入侵直播录屏曝光i
  • 做网站的困难百度官网网站首页
  • 提供武汉手机网站建设葫岛百度seo
  • 哪些网站可以做微信支付seo品牌优化整站优化
  • 网站代码如何做优化杭州seo网站推广排名
  • 网站显示速度的代码是什么情况百度搜索风云榜小说
  • 贵阳网站开发报价网站seo诊断分析报告
  • 外贸网站策划免费行情网站
  • 做网站找个人还是找公司好南宁网络推广品牌
  • 柳州做网站seo哪家好优化网站的意思