logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

排序算法-冒泡排序

n个记录进行冒泡排序的方法是:首先将第一个记录的关键字和第二个记录的关键字进行比较,若为逆序,则交换,然后继续比较;依次类推,直到比较n-1与n;这是第一趟冒泡排序。然后进行第二趟,对前n-1个遍历排序,最多进行n-1趟。优化:若某趟没有进行元素交换,则可以直接结束排序。冒泡排序是一种稳定的排序方法,其时间复杂度为,空间复杂度为O(1),...

#算法
C++标准模板(STL)- 类型支持 (运行时类型识别,type_index )

type_index 类是一个围绕 std::type_info 的包装类,它可用作关联与无序关联容器的索引。它与 type_info 对象的关系通过一个指针维系,故而 type_index 可复制构造 (CopyConstructible) 且可复制赋值 (CopyAssignable) 。

文章图片
#c++
c++ 11 原子操作库 (std::atomic)(二)

每个 std::atomic 模板的实例化和全特化定义一个原子类型。若一个线程写入原子对象,同时另一线程从它读取,则行为良好定义(数据竞争的细节见内存模型)。

#c++
C++标准模板(STL)- 类型支持 (类型特性,is_floating_point,is_array,is_enum)

检查 T 是否为浮点类型。若 T 为 float 、 double 、 long double 为浮点类型,包含任何 cv 限定变体,则提供等于 true 的成员常量 value 。否则, value 等于 false 。检查 T 是否数组类型。若 T 为数组类型,则提供等于 true 的成员常量 value 。否则, value 等于 false 。检查 T 是否为枚举类型。若 T 为枚举类型,

文章图片
#c++
C++标准模板(STL)- 类型支持 (类型属性,is_bounded_array,is_unbounded_array)

检查 T 是否为拥有已知边界的数组类型。若 T 是有已知边界的数组则提供等于 true 的成员常量 value 。否则 value 等于 false 。检查 T 是否为未知边界数组类型。若 T 是有未知边界的数组类型则提供等于 true, 的成员常量 value 。否则 value 等于 false 。

文章图片
#c++
c++ 11 recursive_mutex 递归锁

调用方线程在从它成功调用 lock 或 try_lock 开始的时期里占有 recursive_mutex 。此时期间,线程可以进行对 lock 或 try_lock 的附加调用。所有权的时期在线程调用 unlock 匹配次数时结束。线程占有 recursive_mutex 时,若其他所有线程试图要求 recursive_mutex 的所有权,则它们将阻塞(对于调用 lock )或收到 false

#c++
C++11标准模板(STL)- 算法 - 比较操作 (std::equal)

1,3) 如果范围 [first1, last1) 和范围 [first2, first2 + (last1 - first1)) 相等,返回 true ,否则返回 false

文章图片
#c++#算法
C++11标准模板(STL)- 算法 - 最小/最大操作(std::min)

返回给定值中的较小者。1-2) 返回 a 与 b 的较小者。3-4) 返回 initializer_list ilist 中值的最小者。

文章图片
#c++#算法
c++11 动态内存管理-分配器 (std::allocator)

std::allocator 类模板是所有标准库容器所用的默认分配器 (Allocator) ,若不提供用户指定的分配器。默认分配器无状态,即任何给定的 allocator 实例可交换、比较相等,且能解分配同一 allocator 类型的任何其他实例所分配的内存。

#c++
c++11 日期和时间工具 (std::chrono::time_point)(一)

类模板 std::chrono::time_point 表示时间中的一个点。它被实现成如同存储一个 Duration 类型的自 Clock 的纪元起始开始的时间间隔的值。

#c++
    共 21 条
  • 1
  • 2
  • 3
  • 请选择