ACM笔记
ProHayley
这个作者很懒,什么都没留下…
展开
-
STL泛型编程-set集合容器
set集合容器 set集合容器实现了红黑树(Red-BlackTree)的平衡二叉检索树的数据结构,在插入元素时翻译 2013-12-15 17:16:28 · 669 阅读 · 0 评论 -
M斐波那契数列
M斐波那契数列(使用费马小定理降幂处理以及矩阵的快速幂求法)原创 2015-10-15 19:37:24 · 886 阅读 · 0 评论 -
约瑟夫环问题
约瑟夫环问题原创 2015-11-06 00:16:15 · 1274 阅读 · 0 评论 -
STL泛型编程-list双向链表容器
list双向链表容器 list容器实现了双向链表的数据结构,数据元素时通过链表指针串连成逻辑意义上的的线性表,这样,对链表的任一位置的元素进行插入,删除和查找都是极快速的。 双向链表示例 (a)结点结构;(b)空的双向循环链表;(c)非空的双向循环链表 list的每个节点都有三个域:前驱元素指针域、数据域和后继元素指针域。前驱元素指针域保存了前驱元素的首地址,数据域则是本原创 2013-12-16 11:54:59 · 889 阅读 · 0 评论 -
STL泛型编程-deque双端队列容器
deque双端队列容器 deque双端队列容器和vector一样,采用线性表顺序存储结构。但与vector不同的是,deque采用分块的线性存储结构来存储数据,每块的大小一般为512字节,称一个deque块,所有的deque块使用一个Map块进行管理,每个Map数据项记录各个deque块的首地址,这样,deque快在头部和尾部都可以插入和删除元素,而不需要移动其他元素。一般来所,当考虑到原创 2013-12-16 10:55:29 · 1164 阅读 · 0 评论 -
STL泛型编程-map映照容器
map映照容器 map映照容器的元素结构是由一个键值和一个映照数据组成,键值与映照数据之间具有一一映照的关系。map映照容器的数据结构也是采用红黑树来实现的,插入元素的键值不允许重复,比较函数只对元素的键值进行比较,元素各项数据通过键值检索出来。map和set的用法基本相似。 使用map容器需要头文件"#include " map创建、元素插入和遍历访问:创建map对原创 2013-12-16 09:44:31 · 632 阅读 · 0 评论 -
STL泛型编程-bitset位集合容器
bitset位集合容器 bitset容器是一个bit位元素的序列容器,每个元素只占一个bit位,取值为0或1,因而很节省内存空间。 使用bitset,需要声明头文件"#include " bitset类方法列表(bitsetb) 方法 功能 b.any() b中是否存在置为1的二进制位? b.none() b中不存在置为1的二进制位原创 2013-12-16 17:26:50 · 763 阅读 · 0 评论 -
STL泛型编程-multimap多重映照容器
multimap多重映照容器 multimap与map基本相同,唯一不同的是multimap允许插入重复键值的元素。由于允许重复键值存在,multimap的元素插入,删除,查找都与map不同。 要使用multimap,需要头文件"#include " multimap对象创建、元素插入。(可以重复插入元素,插入元素需要使用insert()方法)#pragma warnin原创 2013-12-16 10:07:26 · 648 阅读 · 0 评论 -
STL泛型编程-multiset多重集合容器
multiset多重集合容器 multiset与set一样,也是使用红黑树来组织元素数据的,唯一不同的是,multiset允许重复的元素键值插入,而set不允许。 multiset也需要声明头文件"#include ",由于它包含重复元素,所以,在插入元素,删除元素、查找元素上较set有差别。翻译 2013-12-15 17:47:45 · 670 阅读 · 0 评论 -
数组最长递增子序列
求一维数组中的最长递增子序列,也就是着一个标号的序列 b[0],b[1],…,b[m] ( 0 <= b[0] < b[1] < … < b[m] < N ),使得 array[b[0]] < arrary[b[1]] < … < array[b[m]].原创 2015-11-20 12:32:30 · 700 阅读 · 0 评论