随笔 - 276  文章 - 0  评论 - 32  阅读 - 56万

随笔分类 -  STL

STL中算法
摘要:sort 大数据量时,采用Quick Sort,分段递归排序; 小数据量时,采用Insert Sort。 如果迭代层次过深,会导致快排性能退化,这时采用Heap Sort排序。 快排pivot采用三点中值法,去整个序列的头尾中央三个元素,以其中值作为pivot 如果希望sort降序排序,引入头文件# 阅读全文
posted @ 2016-09-05 14:48 已停更 阅读(235) 评论(0) 推荐(0) 编辑
STL容器读书笔记
摘要:vector vector维护的是一个连续线性空间 vector是动态空间,随着元素的加入会自动扩容,扩充至当前size的两倍,然后将原内容拷贝,开始在原内容之后构造新元素,并释放空间 vector提供的迭代器是 random access iterators 随机访问迭代器,vector迭代器是普 阅读全文
posted @ 2016-09-04 21:48 已停更 阅读(359) 评论(0) 推荐(0) 编辑
迭代器
摘要:STL的中心思想在于:将容器和算法分开,彼此独立设计,再将他们撮合在一起,迭代器就是这个作用 迭代器是一种smart pointer 迭代器最重要的编程工作就是对operator*和operator->进行重载 迭代器 迭代器 迭代器分类: 迭代器分类: 输入迭代器,只读不写,只增,Istream 阅读全文
posted @ 2016-09-04 15:46 已停更 阅读(186) 评论(0) 推荐(0) 编辑
《STL源码剖析》相关面试题总结
摘要:一、STL简介 STL提供六大组件,彼此可以组合套用: 二、关于容器的一些问题 2.1 当vector的内存用完了,它是如何动态扩展内存的?它是怎么释放内存的?用clear可以释放掉内存吗?是不是线程安全的? 2.2 map是怎么实现的?查找的复杂度是多少?能不能边遍历边插入? 红黑树和散列 O(l 阅读全文
posted @ 2016-08-29 10:57 已停更 阅读(13238) 评论(0) 推荐(1) 编辑
.size和.empty
摘要:坑爹的list容器size方法--为了splice居然把复杂度设计为O(N)? 能用empty的时候,不要用size empty可以保证常量复杂度,但list的size不保证 链表长度必须要遍历全部的链表元素才能获得,而不是用一个变量来表示 list size调用distance,distance内 阅读全文
posted @ 2016-08-25 19:36 已停更 阅读(660) 评论(0) 推荐(0) 编辑
常用函数实现
摘要:求最大公约数 交换swap 求某个区间随机数 分割数组Partition 分解质因数(面试题考过) 不用加号计算两数和 strcpy 二分查找 阅读全文
posted @ 2016-08-24 19:18 已停更 阅读(262) 评论(0) 推荐(0) 编辑
C++中memcpy和memmove
摘要:二者都是内存拷贝 memcpy内存拷贝,没有问题;memmove,内存移动?错,如果这样理解的话,那么这篇文章你就必须要好好看看了,memmove还是内存拷贝。那么既然memcpy和memmove二者都是内存拷贝,那二者究竟有什么区别呢? 区别 memcpy 实现代码,注意以下几点: 1.确定函数原 阅读全文
posted @ 2016-08-24 14:45 已停更 阅读(901) 评论(0) 推荐(0) 编辑

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示