<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[RyanXTY的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/RyanXTY</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; RyanXTY]]></copyright><item><title><![CDATA[git配置]]></title><link>https://blog.youkuaiyun.com/RyanXTY/article/details/126905845</link><guid>https://blog.youkuaiyun.com/RyanXTY/article/details/126905845</guid><author>RyanXTY</author><pubDate>Sat, 17 Sep 2022 15:38:08 +0800</pubDate><description><![CDATA[git详细配置]]></description><category></category></item><item><title><![CDATA[mine导航页]]></title><link>https://blog.youkuaiyun.com/RyanXTY/article/details/126905576</link><guid>https://blog.youkuaiyun.com/RyanXTY/article/details/126905576</guid><author>RyanXTY</author><pubDate>Sat, 17 Sep 2022 15:10:01 +0800</pubDate><description><![CDATA[博客分类导航页]]></description><category></category></item><item><title><![CDATA[vs2013修改背景+彩虹括号插件]]></title><link>https://blog.youkuaiyun.com/RyanXTY/article/details/105705143</link><guid>https://blog.youkuaiyun.com/RyanXTY/article/details/105705143</guid><author>RyanXTY</author><pubDate>Thu, 23 Apr 2020 13:10:57 +0800</pubDate><description><![CDATA[vs2013自定义背景插件
修改背景图，效果如图：

提供一下几个下载地址，如果安装不成功，那么换一个即可
下载链接1：https://visualstudiogallery.msdn.microsoft.com/9ba50f8d-f30c-4e33-ab19-bfd9f56eb817
下载链接2：https://marketplace.visualstudio.com/items?itemNam...]]></description><category></category></item><item><title><![CDATA[关于随机数（生成区间随机数、验证码生成、验证码检测、输入函数的比较）]]></title><link>https://blog.youkuaiyun.com/RyanXTY/article/details/104899921</link><guid>https://blog.youkuaiyun.com/RyanXTY/article/details/104899921</guid><author>RyanXTY</author><pubDate>Mon, 16 Mar 2020 15:36:00 +0800</pubDate><description><![CDATA[随机数的生成（两种方式）

不创建随机数种子，直接生成0—num区间的随机数

//不需要使用随机数种子的随机数生成函数
int RandomFunc1(int num){

	int res = rand() % num;

	return res;
}


使用随机数种子生成start-end之间的随机数

//通过随机数种子生成随机数
int RandomFunc2(int start, i...]]></description><category></category></item><item><title><![CDATA[操作系统（进程 线程 死锁 生产者消费者 读者写者 虚拟内存 页面调度 ）]]></title><link>https://blog.youkuaiyun.com/RyanXTY/article/details/97553300</link><guid>https://blog.youkuaiyun.com/RyanXTY/article/details/97553300</guid><author>RyanXTY</author><pubDate>Fri, 30 Aug 2019 10:25:09 +0800</pubDate><description><![CDATA[并发：
并发是指宏观上在一段时间内能同时运行多个程序，而并行则指同一时刻能运行多个指令。
并行需要硬件支持，如多流水线、多核处理器或者分布式计算系统。
操作系统通过引入进程和线程，使得程序能够并发运行。


共享
系统中的资源能够被多个进程共同使用。
两种方式：互斥共享、同时共享
互斥共享的资源被称为临界资源，在同一时间内只允许一个进程访问。


虚拟
把物理实体转换为逻辑实体。
两种技术：时...]]></description><category></category></item><item><title><![CDATA[C++后端开发部分面试题（深信服、百度、腾讯等）]]></title><link>https://blog.youkuaiyun.com/RyanXTY/article/details/100150593</link><guid>https://blog.youkuaiyun.com/RyanXTY/article/details/100150593</guid><author>RyanXTY</author><pubDate>Fri, 30 Aug 2019 09:22:17 +0800</pubDate><description><![CDATA[1. 内存分区：

	1. C++一般将内存分为五个存储区，分别是：栈区、堆区、自由存储区、静态存储区/全局存储区、常量存储区
	2. 栈：由编译器进行分配，在需要的时候分配，不需要的时候释放。一般用来存储局部变量或者函数参数等 2M

	1. 堆：由new关键字进行分配，配合delete进行释放。由于是交给程序员去管理，因此可能会出现内存泄漏。因此C++11出现了智能指针。因此new所能申请到的...]]></description><category></category></item><item><title><![CDATA[字节跳动（2019提前批）视频面试]]></title><link>https://blog.youkuaiyun.com/RyanXTY/article/details/97618030</link><guid>https://blog.youkuaiyun.com/RyanXTY/article/details/97618030</guid><author>RyanXTY</author><pubDate>Sun, 28 Jul 2019 19:26:00 +0800</pubDate><description><![CDATA[首先要说的是面试官还是很亲切和蔼的，你卡壳或者没有思路的时候会试着引导你，所以要面试的小伙伴不要太紧张，就当成一次交流就可以啦！

自我介绍
项目介绍（面试官会确认你简历上的项目是否有上线，经历过用户的检验，以及在上线后遇到问题是如何解决的，这是他们比较关注的。对于只是自己独立完成的项目，一定程度上只能称作是自己的学习练习…）是一个加分项，但不是必须项，面试官如是说。
题
谈一谈你对操作系统进程和...]]></description><category></category></item><item><title><![CDATA[7-25]]></title><link>https://blog.youkuaiyun.com/RyanXTY/article/details/97261867</link><guid>https://blog.youkuaiyun.com/RyanXTY/article/details/97261867</guid><author>RyanXTY</author><pubDate>Thu, 25 Jul 2019 15:47:09 +0800</pubDate><description><![CDATA[C和C++的区别是什么
C是面向过程的语言，C++是在C语言的基础上开发的一种面向对象编程语言，应用广泛。
C中函数不能进行重载，C++函数可以重载
C++在C的基础上增添类，C是一个结构化语言，它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程，对输入（或环境条件）进行运算处理得到输出（或实现过程（事务）控制），而对于C++，首要考虑的是如何构造一个对象模型，让这个模型能够契合...]]></description><category></category></item><item><title><![CDATA[7-24]]></title><link>https://blog.youkuaiyun.com/RyanXTY/article/details/97161345</link><guid>https://blog.youkuaiyun.com/RyanXTY/article/details/97161345</guid><author>RyanXTY</author><pubDate>Wed, 24 Jul 2019 20:42:13 +0800</pubDate><description><![CDATA[虚基类（虚继承）
class base1:virtual public base
出现原因：假如我们有类A是父类，类B和类C继承了类A，而类D既继承类B又继承类C（这种菱形继承关系）。
当我们实例化D的对象的时候，每个D的实例化对象中都有了两份完全相同的A的数据。
因为保留多份数据成员的拷贝，不仅占用较多的存储空间，还增加了访问这些成员时的困难，容易出错，而实际上，我们并不需要有多份拷贝。
当没有...]]></description><category></category></item><item><title><![CDATA[两个有序数组 求第k小的数O(log(min(M,N))]]></title><link>https://blog.youkuaiyun.com/RyanXTY/article/details/91347368</link><guid>https://blog.youkuaiyun.com/RyanXTY/article/details/91347368</guid><author>RyanXTY</author><pubDate>Sat, 08 Jun 2019 20:20:07 +0800</pubDate><description><![CDATA[【题】两个有序数组 求第k小的数O(log(min(M,N))

【思路】借助求解上中位数的思想  对k和数组长度分类讨论  划分出两个长度相同的部分  以求解最后第k小的数
【具体例子分析】

【代码】
//求解上中位数算法
int FindProcess(vector&lt;int&gt;arr1, int start1, int end1, vector&lt;int&gt;arr2, in...]]></description><category></category></item><item><title><![CDATA[求两个有序数组的上中位数O(logN)]]></title><link>https://blog.youkuaiyun.com/RyanXTY/article/details/91347333</link><guid>https://blog.youkuaiyun.com/RyanXTY/article/details/91347333</guid><author>RyanXTY</author><pubDate>Sat, 08 Jun 2019 20:16:00 +0800</pubDate><description><![CDATA[【题】

【思路】根据中间值比较，二分  然后…二分…直到最终只有两个值，拿到小的那个就行。
【通过具体例子分析】


【代码】
int FindProcess(vector&lt;int&gt;arr1, int start1, int end1, vector&lt;int&gt;arr2,  int start2, int end2){
      if (start1 == end1){
...]]></description><category></category></item><item><title><![CDATA[今日学习总结--模式匹配算法]]></title><link>https://blog.youkuaiyun.com/RyanXTY/article/details/89577264</link><guid>https://blog.youkuaiyun.com/RyanXTY/article/details/89577264</guid><author>RyanXTY</author><pubDate>Fri, 26 Apr 2019 21:41:04 +0800</pubDate><description><![CDATA[模式匹配算法
所谓模式匹配就是在一个主串s中找到子串t的位置，对于复杂的字符串，那么使用怎样的方式去查找就显得尤其重要了。
1、朴素的模式匹配算法
为什么称为朴素呢？因为简单易理解，大家都可以想到，实现起来也相对简单，主要完全可以实现功能。
思路：主串s和子串t都从第一位开始比较，如果相等则比较第二位…如果其中某一位不相等了，则将s回退到i-j+1位置（每次比较一旦遇到不相同，就从开始位置后移一位...]]></description><category></category></item><item><title><![CDATA[浅谈C/C++中的static关键字]]></title><link>https://blog.youkuaiyun.com/RyanXTY/article/details/89526000</link><guid>https://blog.youkuaiyun.com/RyanXTY/article/details/89526000</guid><author>RyanXTY</author><pubDate>Thu, 25 Apr 2019 20:55:08 +0800</pubDate><description><![CDATA[缘由：因为最近在刷笔试题的过程中，很高频率都出现了关于static关键字的考察，因此在查阅资料加上自己理解的情况下，特整理如下：
参考了大佬的整理，在此感谢！https://www.cnblogs.com/qintangtao/p/3285937.html
首先，在c的面向过程和c++的面向对象两种思路下，就形成了静态的变量或函数和静态的对象以及类
其次要知道的一点是：对于一个完整的程序，在内存中...]]></description><category></category></item><item><title><![CDATA[什么情况下析构函数必须定义为虚函数]]></title><link>https://blog.youkuaiyun.com/RyanXTY/article/details/89320847</link><guid>https://blog.youkuaiyun.com/RyanXTY/article/details/89320847</guid><author>RyanXTY</author><pubDate>Mon, 15 Apr 2019 21:05:46 +0800</pubDate><description><![CDATA[子类继承了父类，并创建了对象 father *f = new child();
class father{
public:
      father(){
            cout &lt;&lt; "father 构造函数" &lt;&lt; endl;
      }
      virtual~father(){
            cout &lt;&lt; "father 析...]]></description><category></category></item><item><title><![CDATA[浅谈C++虚函数、纯虚函数、虚继承]]></title><link>https://blog.youkuaiyun.com/RyanXTY/article/details/89316962</link><guid>https://blog.youkuaiyun.com/RyanXTY/article/details/89316962</guid><author>RyanXTY</author><pubDate>Mon, 15 Apr 2019 17:42:23 +0800</pubDate><description><![CDATA[关键字：virtual
虚函数
C++的虚函数主要作用是“运行时多态”，父类中提供虚函数的实现，为子类提供默认的函数实现。
子类可以重写父类的虚函数实现子类的特殊化。
纯虚函数
C++中包含纯虚函数的类，被称为是“抽象类”。不允许实例化，就是不允许定义对象（不能Father  f）），也不能作为函数参数，*只能怪通过指针（Father f）
子类必须实现父类的纯虚函数,否则自己也是抽象类，子类必须...]]></description><category></category></item><item><title><![CDATA[对象的复制和赋值有什么区别？各自的应用场景是怎么样的？]]></title><link>https://blog.youkuaiyun.com/RyanXTY/article/details/89315692</link><guid>https://blog.youkuaiyun.com/RyanXTY/article/details/89315692</guid><author>RyanXTY</author><pubDate>Mon, 15 Apr 2019 17:01:31 +0800</pubDate><description><![CDATA[部分引用：https://blog.youkuaiyun.com/liitdar/article/details/81874541
对象赋值
如同基本类型的赋值语句一样，同一个类的对象之间也是可以进行赋值操作的，即将一个对象的值赋给另一个对象。
对于类对象的赋值，只会对类中的数据成员进行赋值，而不对成员函数赋值。
给对象赋值和调用拷贝构造函数初始化另一个对象行为是类似的，但是有所区别，下面会讲到（实际上调用的...]]></description><category></category></item><item><title><![CDATA[关于C++拷贝构造函数我想说]]></title><link>https://blog.youkuaiyun.com/RyanXTY/article/details/89313645</link><guid>https://blog.youkuaiyun.com/RyanXTY/article/details/89313645</guid><author>RyanXTY</author><pubDate>Mon, 15 Apr 2019 15:52:16 +0800</pubDate><description><![CDATA[如果用户未定义拷贝构造函数，则会调用默认拷贝构造函数。默认的拷贝构造函数是浅拷贝，会造成内存泄漏。
解释
本质上就是构造函数（特殊），用一个已有的对象整体初始化新的对象
如
student s1(01,"zz",18);//比如你创建了一个学生对象s1 学号是01  名字是zz  年龄是18  
//这时候你调用构造函数  完成了对象s1的初始化

student s2;
s2 = s1;

//...]]></description><category></category></item><item><title><![CDATA[关于C++ this指针你需要知道的]]></title><link>https://blog.youkuaiyun.com/RyanXTY/article/details/89312822</link><guid>https://blog.youkuaiyun.com/RyanXTY/article/details/89312822</guid><author>RyanXTY</author><pubDate>Mon, 15 Apr 2019 15:24:28 +0800</pubDate><description><![CDATA[背景
上课讲到类的时候就简单提了一下，但是慢慢后面学习构造、析构、拷贝构造，再到后面重写String类的函数的时候，明显感觉自己对this指针理解的是在太过浅薄，因此回来补一下。
（书本上）this关键字：
用于区别局部变量和成员变量
只能在类成员函数中使用，指向调用该成员函数的对象
解释
在类中，用户自定义了一个class A，其中有成员变量和成员函数，当我们在主函数创建这个类的对象的时候就相当...]]></description><category></category></item><item><title><![CDATA[总结最近学习成果17-统计字符串的各个字母有几个，并按字母表顺序输出]]></title><link>https://blog.youkuaiyun.com/RyanXTY/article/details/89310403</link><guid>https://blog.youkuaiyun.com/RyanXTY/article/details/89310403</guid><author>RyanXTY</author><pubDate>Mon, 15 Apr 2019 13:41:09 +0800</pubDate><description><![CDATA[统计字符串的各个字母有几个，并按字母表顺序输出  ddkafadf —&gt; a2d3f2k1
//套用桶排序的思想，遍历桶，只有桶里面的数字不是0 说明出现过这个字母，然后从前往后输出就行
void FindSum(char* s){
      char* t = s;
      int buck[128] = { 0 };
      while (*s){
            bu...]]></description><category></category></item><item><title><![CDATA[总结最近学习成果16-字符空格替换]]></title><link>https://blog.youkuaiyun.com/RyanXTY/article/details/89310392</link><guid>https://blog.youkuaiyun.com/RyanXTY/article/details/89310392</guid><author>RyanXTY</author><pubDate>Mon, 15 Apr 2019 13:40:29 +0800</pubDate><description><![CDATA[将字符串中的每个空格都替换成Mr.Yang，但不能申请新的buffer，同时要保证O(n)级的时间复杂度。（原题是替换成20%）
//思路：将字符串从后开始  把每个字符移动到totalLen--（包含了新添加字符的空间）  因此需要先算出字符串长度len  以及空格个数   然后算出totalLen  
void ChangeSpace(char* s){
      int len = 0;
...]]></description><category></category></item></channel></rss>