<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Code_Hu的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Code_Hu</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Code_Hu]]></copyright><item><title><![CDATA[C++回调的几种方式]]></title><link>https://blog.youkuaiyun.com/Code_Hu/article/details/103226798</link><guid>https://blog.youkuaiyun.com/Code_Hu/article/details/103226798</guid><author>Code_Hu</author><pubDate>Sun, 24 Nov 2019 17:53:50 +0800</pubDate><description><![CDATA[自己平时常用到的C++回调方式主要为两类

通过设置函数指针的方式
通过集成接口的方式（Sink下沉）

一. 设置接口sink的方式
一般都是由一个消息接口类，作为回调，需要处理返回回调的信息的类，只需要继承接口类，并实现对应的方法即可。初始化时，只需要将子类设置下去，待任务完成时，就可以实现回调。
简单的模仿一下文件传输，ITaskCallback为消息回调接口，需要该消息回调的类，只需要继承...]]></description><category></category></item><item><title><![CDATA[二分查找]]></title><link>https://blog.youkuaiyun.com/Code_Hu/article/details/102642059</link><guid>https://blog.youkuaiyun.com/Code_Hu/article/details/102642059</guid><author>Code_Hu</author><pubDate>Sat, 19 Oct 2019 19:30:02 +0800</pubDate><description><![CDATA[二分查找的核心思想是在有序的序列中，每次与中间元素比较，若比中间元素大，则查找元素出现在右半部分，反之则出现在左半部分，然后对改新的区间进行如上操作。直到找到对应元素，或者low &gt; high 递归终止条件。时间复杂度为O(logn)

局限性

需要有序数据，对动态数据集不怎么使用，性能耗费高。适用于插入、删除操作少的场合
	数据量太小不适合。数据量过小时，和线性查找耗时差不多。
	...]]></description><category></category></item><item><title><![CDATA[八大排序算法（C++）]]></title><link>https://blog.youkuaiyun.com/Code_Hu/article/details/102537879</link><guid>https://blog.youkuaiyun.com/Code_Hu/article/details/102537879</guid><author>Code_Hu</author><pubDate>Sun, 13 Oct 2019 20:58:39 +0800</pubDate><description><![CDATA[0. 排序算法分析角度

a. 算法的执行效率

最好情况、最坏情况、平均时间复杂度
	时间复杂度的系数、常数、低阶
	比较次数、交换或移动次数
b. 算法的内存消耗

空间复杂度，当空间复杂度为O(1)时，被称为原地排序

c. 算法的稳定性

如果待排序的序列存在值相等的元素，经过排序之后，相等元素之间的先后顺序保持不变。

1. 冒泡排序

冒泡排序只会操作相邻的两个数据。每次操作都会对两个...]]></description><category></category></item><item><title><![CDATA[Linux CPU上下文切换对性能的影响]]></title><link>https://blog.youkuaiyun.com/Code_Hu/article/details/84632591</link><guid>https://blog.youkuaiyun.com/Code_Hu/article/details/84632591</guid><author>Code_Hu</author><pubDate>Thu, 29 Nov 2018 14:47:54 +0800</pubDate><description><![CDATA[ 


多个进程竞争 CPU 也会导致平均负载的升高，这是由于CPU的上下文切换导致的。


一、CPU上下文

        Linux 是一个多任务操作系统，系统会在很短的时间内，将CPU时间片轮流分配给任务，由于时间片很短，就会给人以同时运行的感觉（每秒几十上百次）。

        每个任务运行前，CPU 都需要知道任务从哪里加载、又从哪里开始运行CPU，需要从寄存器中恢复，跳转到程序...]]></description><category></category></item><item><title><![CDATA[LeetCode72 Edit Distance(编辑距离)]]></title><link>https://blog.youkuaiyun.com/Code_Hu/article/details/81610618</link><guid>https://blog.youkuaiyun.com/Code_Hu/article/details/81610618</guid><author>Code_Hu</author><pubDate>Sun, 12 Aug 2018 21:07:35 +0800</pubDate><description><![CDATA[
  本题是LeetCode 第72题，可以用动态规划来求解。github地址点击链接。


Given two words word1 and word2, find the minimum number of operations required to convert word1 to word2.



You have the following 3 operations permitt...]]></description><category></category></item><item><title><![CDATA[正则表达式小结]]></title><link>https://blog.youkuaiyun.com/Code_Hu/article/details/79255188</link><guid>https://blog.youkuaiyun.com/Code_Hu/article/details/79255188</guid><author>Code_Hu</author><pubDate>Sun, 04 Feb 2018 21:49:46 +0800</pubDate><description><![CDATA[最近学习了正则表达式，趁还热乎，写下这篇博客，记录一下。




一、正则表达式概念

正则表达式（英语：Regular Expression，在代码中常简写为regex）。 
正则表达式是一个字符串，使用单个字符串来描述、用来定义匹配规则，匹配一系列符合某个句法规则的字符串。在开发中，正则表达式通常被用来检索、替换那些符合某个规则的文本，也可以用来提取字符串。几个常用的地方：验证输入（譬如手机号]]></description><category></category></item></channel></rss>