<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[langk_的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/langk_</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; langk_]]></copyright><item><title><![CDATA[【高并发内存池】]]></title><link>https://blog.youkuaiyun.com/langk_/article/details/130169729</link><guid>https://blog.youkuaiyun.com/langk_/article/details/130169729</guid><author>langk_</author><pubDate>Sat, 08 Jul 2023 09:49:27 +0800</pubDate><description><![CDATA[当前项目是实现一个高并发的内存池，他的原型是google的一个开源项目tcmalloc，tcmalloc全称 Thread-CachingMalloc，即线程缓存的malloc，实现了高效的多线程内存管理，用于替代系统的内存分配相关的函数（malloc、free）。我们这个项目是把tcmalloc最核心的框架简化后拿出来，模拟实现出一个自己的高并发内存池，目的就是学习tcmalloc的精华，学习tcmlloc的这种框架设计。这种方式有点类似我们之前学习STL容器的方式。]]></description><category></category></item><item><title><![CDATA[【Git原理与使用】]]></title><link>https://blog.youkuaiyun.com/langk_/article/details/131206913</link><guid>https://blog.youkuaiyun.com/langk_/article/details/131206913</guid><author>langk_</author><pubDate>Sat, 17 Jun 2023 12:33:28 +0800</pubDate><description><![CDATA[Git使用与原理]]></description><category></category></item><item><title><![CDATA[【负载均衡式的在线oj（1.compile_runner_server模块）】]]></title><link>https://blog.youkuaiyun.com/langk_/article/details/130451659</link><guid>https://blog.youkuaiyun.com/langk_/article/details/130451659</guid><author>langk_</author><pubDate>Mon, 08 May 2023 15:50:01 +0800</pubDate><description><![CDATA[该子模块只负责把浏览器提交上来的代码进行编译。如果编译出错，则形成临时文件，把编译报错写入到临时文件当中。该子模块只负责把compile子模块编译好的代码运行起来，把程序运行输出到标准输出和标准错误的内容重定向到temp路径下的指定文件当中，并获取程序运行结束后的退出信号。子模块主要内存时对compile子模块和runner子模块进行分装，并引入jsoncpp第三方库。当子模块获取到浏览器提交上来的json字符串类型的请求时，子模块就会把提交上来的json字符串喂给子模块进行处理。所以子模块就是分装。]]></description><category></category></item><item><title><![CDATA[【负载均衡式的在线oj（2.oj_server模块）】]]></title><link>https://blog.youkuaiyun.com/langk_/article/details/130457974</link><guid>https://blog.youkuaiyun.com/langk_/article/details/130457974</guid><author>langk_</author><pubDate>Mon, 08 May 2023 15:49:48 +0800</pubDate><description><![CDATA[主要完成对用户所请求资源的路由功能，分别为获取所有所有题目、获取单个指定题目和对指定题目运行结果的判题。oj_model子模块主要用来服务器和浏览器进行数据交互，对外提供访问数据的接口。例如浏览器获取所有的oj题目链表和获取指定oj题目的具体内容。oj_view子模块的功能是对数据进行渲染形成html文件。public :LOG(INFO) ]]></description><category></category></item><item><title><![CDATA[【boost搜索引擎】]]></title><link>https://blog.youkuaiyun.com/langk_/article/details/129221470</link><guid>https://blog.youkuaiyun.com/langk_/article/details/129221470</guid><author>langk_</author><pubDate>Sun, 26 Feb 2023 09:05:41 +0800</pubDate><description><![CDATA[基于boost库没有站内搜索实现的boost搜索引擎，方便查找]]></description><category></category></item><item><title><![CDATA[【Linux进程信号】]]></title><link>https://blog.youkuaiyun.com/langk_/article/details/128049559</link><guid>https://blog.youkuaiyun.com/langk_/article/details/128049559</guid><author>langk_</author><pubDate>Sat, 26 Nov 2022 11:39:07 +0800</pubDate><description><![CDATA[万字详解Linux进程信号]]></description><category></category></item><item><title><![CDATA[【进程间通信】]]></title><link>https://blog.youkuaiyun.com/langk_/article/details/127967780</link><guid>https://blog.youkuaiyun.com/langk_/article/details/127967780</guid><author>langk_</author><pubDate>Mon, 21 Nov 2022 16:51:41 +0800</pubDate><description><![CDATA[Linux---进程间通信之匿名管道、命名管道、共享内存]]></description><category></category></item><item><title><![CDATA[【动静态库的制作和使用】]]></title><link>https://blog.youkuaiyun.com/langk_/article/details/127648166</link><guid>https://blog.youkuaiyun.com/langk_/article/details/127648166</guid><author>langk_</author><pubDate>Wed, 02 Nov 2022 11:19:30 +0800</pubDate><description><![CDATA[动静态库的制作与使用]]></description><category></category></item><item><title><![CDATA[lambda表达式]]></title><link>https://blog.youkuaiyun.com/langk_/article/details/127280699</link><guid>https://blog.youkuaiyun.com/langk_/article/details/127280699</guid><author>langk_</author><pubDate>Wed, 12 Oct 2022 16:20:37 +0800</pubDate><description><![CDATA[c++中的lambda表达式]]></description><category></category></item><item><title><![CDATA[【C++面向对象三大特性之继承】]]></title><link>https://blog.youkuaiyun.com/langk_/article/details/127152710</link><guid>https://blog.youkuaiyun.com/langk_/article/details/127152710</guid><author>langk_</author><pubDate>Sun, 09 Oct 2022 10:55:17 +0800</pubDate><description><![CDATA[继承(inheritance)机制是面向对象程序设计使代码可以复用的最重要的手段，它允许程序员在保持原有类特性的基础上进行扩展，增加功能，这样产生新的类，称派生类。继承呈现了面向对象程序设计的层次结构，体现了由简单到复杂的认知过程。以前我们接触的复用都是函数复用，继承是类设计层次的复用。]]></description><category></category></item><item><title><![CDATA[【智能指针】]]></title><link>https://blog.youkuaiyun.com/langk_/article/details/127169169</link><guid>https://blog.youkuaiyun.com/langk_/article/details/127169169</guid><author>langk_</author><pubDate>Thu, 06 Oct 2022 13:19:54 +0800</pubDate><description><![CDATA[智能指针]]></description><category></category></item><item><title><![CDATA[【进程控制】]]></title><link>https://blog.youkuaiyun.com/langk_/article/details/127151370</link><guid>https://blog.youkuaiyun.com/langk_/article/details/127151370</guid><author>langk_</author><pubDate>Mon, 03 Oct 2022 13:33:27 +0800</pubDate><description><![CDATA[进程控制（万字详解，进程创建，进程终止，进程等待，进程程序替换）]]></description><category></category></item><item><title><![CDATA[红黑树（BTree）]]></title><link>https://blog.youkuaiyun.com/langk_/article/details/126690040</link><guid>https://blog.youkuaiyun.com/langk_/article/details/126690040</guid><author>langk_</author><pubDate>Thu, 08 Sep 2022 21:55:24 +0800</pubDate><description><![CDATA[红黑树是怎么平衡的？]]></description><category></category></item><item><title><![CDATA[AVL树（平衡二叉搜索树）]]></title><link>https://blog.youkuaiyun.com/langk_/article/details/126645225</link><guid>https://blog.youkuaiyun.com/langk_/article/details/126645225</guid><author>langk_</author><pubDate>Sat, 03 Sep 2022 11:04:49 +0800</pubDate><description><![CDATA[带你手撕AVL树，左单旋，右单旋，左右双旋，右左双旋]]></description><category></category></item><item><title><![CDATA[【 二叉搜索树（BinarySearchTree）】]]></title><link>https://blog.youkuaiyun.com/langk_/article/details/126586905</link><guid>https://blog.youkuaiyun.com/langk_/article/details/126586905</guid><author>langk_</author><pubDate>Wed, 31 Aug 2022 08:51:09 +0800</pubDate><description><![CDATA[二叉搜索树的递归与非递归实现。]]></description><category></category></item><item><title><![CDATA[【二叉树】C语言实现]]></title><link>https://blog.youkuaiyun.com/langk_/article/details/124243338</link><guid>https://blog.youkuaiyun.com/langk_/article/details/124243338</guid><author>langk_</author><pubDate>Fri, 22 Apr 2022 10:42:24 +0800</pubDate><description><![CDATA[二叉树1.树的概念及结构1.1树的概念二级目录三级目录
1.树的概念及结构
1.1树的概念

树是一种非线性的数据结构，它是由n（n&gt;=0）个有限结点组成一个具有层次关系的集合。把它叫做树是因
为它看起来像一棵倒挂的树，也就是说它是根朝上，而叶朝下的。

二级目录
三级目录

...]]></description><category></category></item><item><title><![CDATA[【直接插入排序、希尔排序，直接选择排序】（C语言实现）]]></title><link>https://blog.youkuaiyun.com/langk_/article/details/124082711</link><guid>https://blog.youkuaiyun.com/langk_/article/details/124082711</guid><author>langk_</author><pubDate>Tue, 12 Apr 2022 10:45:47 +0800</pubDate><description><![CDATA[直接插入排序、希尔排序，选择排序一.直接插入排序
一.直接插入排序

图形演示：

✈✈✈第一趟排序

✈✈✈第二趟排序

✈✈✈第三趟排序



✈✈✈第四趟排序



代码实现：


//直接插入排序
void InserSort(int* a, int size)
{
	for (int i = 0; i &lt; size - 1; ++i)
	{
		int end = i;
		int tmp = a[end + 1];
		while (end &gt;= 0)
		{
			if (a[en]]></description><category></category></item><item><title><![CDATA[【快速排序】（C语言实现）]]></title><link>https://blog.youkuaiyun.com/langk_/article/details/124005500</link><guid>https://blog.youkuaiyun.com/langk_/article/details/124005500</guid><author>langk_</author><pubDate>Fri, 08 Apr 2022 18:11:23 +0800</pubDate><description><![CDATA[快速排序一.  递归实现1. 快排是什么？2.实现快排的三种方式a.挖坑法b.左右指针法c.前后指针法二.非递归实现
一.  递归实现
1. 快排是什么？
快速排序算法通过多次比较和交换来实现排序，其排序流程如下：
(1)首先设定一个分界值，通过该分界值将数组分成左右两部分。
(2)将大于或等于分界值的数据集中到数组右边，小于分界值的数据集中到数组的左边。此时，左边部分中各元素都小于分界值，而右边部分中各元素都大于或等于分界值。
(3)然后，左边和右边的数据可以独立排序。对于左侧的数组数据，又可以取一个分界]]></description><category></category></item><item><title><![CDATA[【堆排序算法】（C语言实现）]]></title><link>https://blog.youkuaiyun.com/langk_/article/details/123946747</link><guid>https://blog.youkuaiyun.com/langk_/article/details/123946747</guid><author>langk_</author><pubDate>Mon, 04 Apr 2022 23:17:57 +0800</pubDate><description><![CDATA[八大排序一.堆排序1.堆的概念及性质2.向下调整和向上调整两大算法二级目录三级目录
一.堆排序
1.堆的概念及性质
1.1堆的概念
a. 堆是一种基本的数据结构。在这里我用数组来形容，在一个二叉堆的数组中，每一个元素（根）都要保证大于等于或小于等于另外两个特定位置的元素（左右子树）。同时相应的，这些元素（根）又要大于等于或小于等于另外两个相应位置的元素（左右子树），整个数据结构以此类推。如果我们将整个数据结构画成树状结构，就能够清晰地看出整个结构的样子。

1.2堆的性质
a. 堆的逻辑结构一定是完全二叉树]]></description><category></category></item><item><title><![CDATA[栈与队列(栈)]]></title><link>https://blog.youkuaiyun.com/langk_/article/details/123738109</link><guid>https://blog.youkuaiyun.com/langk_/article/details/123738109</guid><author>langk_</author><pubDate>Fri, 25 Mar 2022 16:48:28 +0800</pubDate><description><![CDATA[后进先出]]></description><category></category></item></channel></rss>