自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 先进先出生产者消费者模式实现

以下代码未经编译调试,可能编译不过。只是大概写了下实现。 #include <iostream> #include <queue> using namespace std; class CBuffer { private: mutex m_mutex; condition_variable_any cond_put; condition_variable_any...

2020-04-25 17:52:18 249

原创 1.5 冒泡排序

算法: 比较相邻的元素。如果第一个比第二个大,就交换他们两个。 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。 针对所有的元素重复以上的步骤,除了最后一个。 持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。 代码: #include <iostream> using namespace std; template...

2020-04-20 23:45:54 124

原创 [编程题]字符串最后一个单词的长度

```cpp #include <iostream> #include <sstream> using namespace std; int main() { string str = "I go to school tomorrow, but today"; istringstream is(str); string s; while(is >>...

2020-04-20 23:06:20 140

原创 1.4 归并排序

归并排序(MERGE-SORT)是建立在归并操作上的一种有效的排序算法,该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为二路归并。归并排序是一种稳定的排序方法。 作为一种典型的分而治之思想的算法应用,归并排序的实现由两种方法: 自上而下的递归(...

2020-04-19 22:38:59 158

原创 智能指针总结比较

只能指针总结比较 智能指针是对象,不是指针,是在栈空间分配内存,所以总会调用到析构函数。都是轻量级的对象,速度与原始指针相差无几,都是异常安全的,对所指向的T只有一个要求:类型T的析构函数不能抛出异常。智能指针在析构时调用delete删除p指针,所以初始化时p必须是一个new表达式动态分配的结果或者是个空指针。 ...

2020-04-19 21:53:21 223

原创 1.3 快速排序

快速排序是由东尼·霍尔所发展的一种排序算法。在平均状况下,排序 n 个项目要 Ο(nlogn) 次比较。在最坏状况下则需要 Ο(n2) 次比较,但这种状况并不常见。事实上,快速排序通常明显比其他 Ο(nlogn) 算法更快,因为它的内部循环(inner loop)可以在大部分的架构上很有效率地被实现出来。 快速排序使用分治法(Divide and conquer)策略来把一个串行(list...

2020-02-17 20:08:29 164

原创 1.2 堆排序

堆排序(Heapsort)是指利用堆这种数据结构所设计的一种排序算法。堆积是一个近似完全二叉树的结构,并同时满足堆积的性质:即子结点的键值或索引总是小于(或者大于)它的父节点。堆排序可以说是一种利用堆的概念来排序的选择排序。分为两种方法: 大顶堆:每个节点的值都大于或等于其子节点的值,在堆排序算法中用于升序排列; 小顶堆:每个节点的值都小于或等于其子节点的值,在堆排序算法中用于降序排列; 堆排序的...

2020-02-13 21:51:25 544

原创 1.1基数排序

基数排序(radix sort)属于“分配式排序”(distribution sort),又称“桶子法”(bucket sort)或bin sort,顾名思义,它是透过键值的部份资讯,将要排序的元素分配至某些“桶”中,藉以达到排序的作用,基数排序法是属于稳定性的排序。 最高位优先(Most Significant Digit first)法,简称MSD法:先按k1排序分组,同一组中记录,关键码k...

2020-02-09 20:38:10 157

原创 boost线程循环打印字符ABC

// PrintString.cpp : 定义控制台应用程序的入口点。 // #include “stdafx.h” #include <boost\thread\thread.hpp> #include <boost\thread\mutex.hpp> #include <boost\thread\condition_variable.hpp> #includ...

2019-09-08 15:36:44 124

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除