最近在看剑指offer,发现很多自己并不怎么熟悉的关于C++的知识点。
希望每天整理一点遇到的新知识,不管怎样,每天进步一点点,有所收获就算是没有辜负这一天的生命,毕竟每一天对我来说都是余生中的最新一天。突然如此感慨只是为了激励一下自己,不论学习还是生活都不要太功利,所有的细节最终都会堆砌成浑厚的人生。
排序函数
函数名 | 功能 |
sort | 对于给定范围内的所有元素进行升序排列 |
unordered_set
这是一种容器,内部实现类似于哈希表。哈希表是关键字以及关键码值对应的。其实哈希表它是一个双向的过程,首先确定一个函数f(x),其中x是关键字,根据函数得到关键码值。随后我们可以利用关键码值,直接获取关键字的信息。
C++ 11中对unordered_set描述大体如下:无序集合容器(unordered_set)是一个存储唯一(unique,即无重复)的关联容器(Associative container),容器中的元素无特别的秩序关系,该容器允许基于值的快速元素检索,同时也支持正向迭代。
在一个unordered_set内部,元素不会按任何顺序排序,而是通过元素值的hash值将元素分组放置到各个槽(Bucker,也可以译为“桶”),这样就能通过元素值快速访问各个对应的元素(均摊耗时为O(1))。