<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[m0_37579288的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/m0_37579288</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; m0_37579288]]></copyright><item><title><![CDATA[leetcode 88 合并两个有序数组]]></title><link>https://blog.youkuaiyun.com/m0_37579288/article/details/134457201</link><guid>https://blog.youkuaiyun.com/m0_37579288/article/details/134457201</guid><author>m0_37579288</author><pubDate>Tue, 10 Jun 2025 00:28:12 +0800</pubDate><description><![CDATA[题目：给你两个按排列的整数数组nums1和nums2，另有两个整数m和n，分别表示nums1和nums2中的元素数目。请你nums2到nums1中，使合并后的数组同样按排列。最终，合并后数组不应由函数返回，而是存储在数组nums1中。为了应对这种情况，nums1的初始长度为m + n，其中前m个元素表示应合并的元素，后n个元素为0，应忽略。nums2的长度为n。需要合并 [1,2,3] 和 [2,5,6]。合并结果是 [,2,,5,6] ，其中斜体加粗标注的为 nums1 中的元素。[1]]]></description><category></category></item><item><title><![CDATA[（九）单例模式的几种实现方式]]></title><link>https://blog.youkuaiyun.com/m0_37579288/article/details/102596534</link><guid>https://blog.youkuaiyun.com/m0_37579288/article/details/102596534</guid><author>m0_37579288</author><pubDate>Wed, 16 Oct 2019 23:09:37 +0800</pubDate><description><![CDATA[参考链接：https://www.runoob.com/design-pattern/singleton-pattern.html

一、懒汉式（线程不安全）

懒汉的意思就是我不生成实例，到使用时才生成第一个实例。

实现简单，但因为取唯一实例时未加锁，因此不支持多线程。


public clsaa Singleton{
    private static Singleton instanc...]]></description><category></category></item><item><title><![CDATA[（八）单例模式]]></title><link>https://blog.youkuaiyun.com/m0_37579288/article/details/102540173</link><guid>https://blog.youkuaiyun.com/m0_37579288/article/details/102540173</guid><author>m0_37579288</author><pubDate>Sun, 13 Oct 2019 23:56:30 +0800</pubDate><description><![CDATA[一、概念

一个类在程序中仅有单个对象存在，不会存在多个这个类的对象。保证一个类仅有一个实例，并提供一个访问它的全局访问点。

主要解决一个全局使用的类频繁地创建与销毁。需要自己创建自己的实例并提供给其他类使用，构造函数写为私有。

二、例子



单例模式中保存了唯一的自己这个类的静态实例，并将构造函数设为私有，对外提供了静态的getInstance函数。


public class Sing...]]></description><category></category></item><item><title><![CDATA[（七）观察者模式]]></title><link>https://blog.youkuaiyun.com/m0_37579288/article/details/102539993</link><guid>https://blog.youkuaiyun.com/m0_37579288/article/details/102539993</guid><author>m0_37579288</author><pubDate>Sun, 13 Oct 2019 23:38:17 +0800</pubDate><description><![CDATA[一、概念

观察者模式描述对象之间一对多的关系，当一个对象发生变化时，所有的依赖它的对象（观察者对象）都会得到通知并自动更新。

二、例子



如上所示，观察者模式需要有三个类：一个Subject，即发布者，其中保存订阅者的列表和订阅内容，其中有添加观察者函数attach，和设置与获取状态函数setState和getState，以及通知函数notifyAllObservers；Observer接...]]></description><category></category></item><item><title><![CDATA[（六）装饰者模式]]></title><link>https://blog.youkuaiyun.com/m0_37579288/article/details/102512250</link><guid>https://blog.youkuaiyun.com/m0_37579288/article/details/102512250</guid><author>m0_37579288</author><pubDate>Fri, 11 Oct 2019 23:55:47 +0800</pubDate><description><![CDATA[一、概念

装饰者模式就是对现有类的功能进行扩展，相比继承更加灵活一些。

二、例子

     

图中ShapeDecorator为装饰者抽象类，里面有成员shape（也可以写到RedShapeDecorator中，图中在ShapeDecorator和RedShapeDecorator中仅有一处存在shape即可，图中两处均有，个人觉得有误）、接口的函数draw、以及构造函数来对...]]></description><category></category></item><item><title><![CDATA[（五）适配器模式]]></title><link>https://blog.youkuaiyun.com/m0_37579288/article/details/102470672</link><guid>https://blog.youkuaiyun.com/m0_37579288/article/details/102470672</guid><author>m0_37579288</author><pubDate>Wed, 09 Oct 2019 22:20:26 +0800</pubDate><description><![CDATA[一、概念

顾名思意，是用来对两个不同的接口进行适配的一种设计模式，将一个接口转换成需要的另一个接口。一般用于现有类的接口不满足需求的情况下，通过适配器继承或依赖已有对象实现想要的目标接口，解决现有运行项目的问题。

二、基本实现



如上图，在原有的基础上，要想在接口A、B之间进行转换，那么适配器只需要继承接口A，并引入变量类B，在实现的接口A函数中调用B的接口进行操作即可。看了几个其他的适配...]]></description><category></category></item><item><title><![CDATA[（四）抽象工厂模式]]></title><link>https://blog.youkuaiyun.com/m0_37579288/article/details/102415294</link><guid>https://blog.youkuaiyun.com/m0_37579288/article/details/102415294</guid><author>m0_37579288</author><pubDate>Tue, 08 Oct 2019 22:40:35 +0800</pubDate><description><![CDATA[一、概念

抽象工厂模式就是能够生成工厂类的模式。类似于在工厂模式上再加一层封装，负责生成各种各样的工厂，可以视为建厂子的模式。

二、抽象工厂的使用

当一个工厂模式中生产的类有多重组合方式，例如工厂生产水果茶，A厂产乌龙蜜桃茶，B厂产铁观音樱桃茶，因此在抽象工厂类(作为父类)中写入茶+水果的组合，至于具体的哪种茶和哪种水果则交给由抽象工厂派生出来的A厂（子类）和B厂（子类）去搞定。

下面一段...]]></description><category></category></item><item><title><![CDATA[（三）工厂模式]]></title><link>https://blog.youkuaiyun.com/m0_37579288/article/details/102329562</link><guid>https://blog.youkuaiyun.com/m0_37579288/article/details/102329562</guid><author>m0_37579288</author><pubDate>Mon, 07 Oct 2019 22:18:55 +0800</pubDate><description><![CDATA[国庆期间去东北参加了朋友的婚礼，时光飞逝呀，人生漫长又短暂，要给自己找点有乐趣的事情去做。

以下实践来自实验楼，链接：https://www.shiyanlou.com/courses/100/learning/?id=865，

什么是工厂模式？

工厂一般指生产特定产品的平台，那么类似的，工厂模式可以将其类比为一个工厂，指生产特定类型的对象的一种模式。工厂模式封装了创建对象的细节，使用者只使...]]></description><category></category></item><item><title><![CDATA[（二）设计模式分类]]></title><link>https://blog.youkuaiyun.com/m0_37579288/article/details/101720629</link><guid>https://blog.youkuaiyun.com/m0_37579288/article/details/101720629</guid><author>m0_37579288</author><pubDate>Sun, 29 Sep 2019 22:28:54 +0800</pubDate><description><![CDATA[实验楼设计模式的课程链接（不是广告，这个免费的）：https://www.shiyanlou.com/courses/100

目前这些先有个概念，毕竟后面才能理解。

三类设计模式：

创建型模式，用于创建对象，一是将系统使用的具体类封装起来，二是隐藏这些具体类的实例创建和结合的方式。

共 5 种：工厂模式、抽象工厂模式、单例模式、建造者模式、原型模式。

结构型模式，主要处理类和对象的组合，...]]></description><category></category></item><item><title><![CDATA[(一)初识设计模式]]></title><link>https://blog.youkuaiyun.com/m0_37579288/article/details/101718885</link><guid>https://blog.youkuaiyun.com/m0_37579288/article/details/101718885</guid><author>m0_37579288</author><pubDate>Sun, 29 Sep 2019 21:56:08 +0800</pubDate><description><![CDATA[利用闲时间整理一下设计模式，目标设定最迟两个月（2019年11月30日）完成吧，目前大计划还没有^-^。

本周先入个门。

原则：

1.开放封闭原则

对扩展开放，对修改封闭。当有新功能时，在原有基础上对代码进行扩展，而不是修改原有代码，保证软件的稳定性。尤其是抽象的类和接口是不允许修改的，因此在设计之初就要考虑好如何去抽象。

2.里氏代换原则

子类对象可以代替任何基类对象出现的地方，反之...]]></description><category></category></item><item><title><![CDATA[字符串整数]]></title><link>https://blog.youkuaiyun.com/m0_37579288/article/details/99876646</link><guid>https://blog.youkuaiyun.com/m0_37579288/article/details/99876646</guid><author>m0_37579288</author><pubDate>Tue, 20 Aug 2019 19:37:37 +0800</pubDate><description><![CDATA[#include &lt;stdio.h&gt;
main()
{
char a[20];
char b[20];
char c[20];
int a_len;
int b_len;
int i;
printf ("please input string a: ");
scanf ("%s", a);
printf ("please input string b: ");
scanf ("%s",...]]></description><category></category></item><item><title><![CDATA[2.tutorial的第一个demo]]></title><link>https://blog.youkuaiyun.com/m0_37579288/article/details/80970176</link><guid>https://blog.youkuaiyun.com/m0_37579288/article/details/80970176</guid><author>m0_37579288</author><pubDate>Mon, 09 Jul 2018 14:59:18 +0800</pubDate><description><![CDATA[自己配置工程配置了好久还是出现各种问题，最后用雷神配置好的工程上跑代码。基于tutorial的第一个简单demo在雷神配置好的ffmpeg+SDL工程上顺利通过，因为tutorial上的demo使用的API有许多已经被删除或修改了，所以需要对照新的API稍作一些修改，一下是tutorial的第一个小程序代码：#include &amp;lt;stdio.h&amp;gt;

#define __STDC_CON...]]></description><category></category></item><item><title><![CDATA[VVC参考软件的下载安装]]></title><link>https://blog.youkuaiyun.com/m0_37579288/article/details/80918728</link><guid>https://blog.youkuaiyun.com/m0_37579288/article/details/80918728</guid><author>m0_37579288</author><pubDate>Wed, 04 Jul 2018 21:16:50 +0800</pubDate><description><![CDATA[备忘，原文链接：https://blog.youkuaiyun.com/JRRRJ/article/details/80797064]]></description><category></category></item><item><title><![CDATA[leetcode:三数之和]]></title><link>https://blog.youkuaiyun.com/m0_37579288/article/details/80909213</link><guid>https://blog.youkuaiyun.com/m0_37579288/article/details/80909213</guid><author>m0_37579288</author><pubDate>Wed, 04 Jul 2018 11:21:27 +0800</pubDate><description><![CDATA[Given an array nums of n integers, are there elements a, b, c in nums such that a + b + c = 0? Find all unique triplets in the array which gives the sum of zero.Note:The solution set must not contain ...]]></description><category></category></item><item><title><![CDATA[《剑指offer》65：滑动窗口的最大值]]></title><link>https://blog.youkuaiyun.com/m0_37579288/article/details/80904575</link><guid>https://blog.youkuaiyun.com/m0_37579288/article/details/80904575</guid><author>m0_37579288</author><pubDate>Tue, 03 Jul 2018 21:27:00 +0800</pubDate><description><![CDATA[题目：给定一个数组和滑动窗日的大小，请找出所有滑动窗口里的最大值。如果输入数组{2,3,4,2,6,2,5,1}及滑动窗印的大小3，那么存在6个滑动窗口，它们的最大值分别为{4,4,6,6,6,5}。第一想法是按窗口滑动，每次对比窗口内的数字大小，选出最大值，但很明显，这里存在着很多次重复的大小对比操作，将那些重复的操作想办法剪去即可。#include&amp;lt;iostream&amp;gt;
#inclu...]]></description><category></category></item><item><title><![CDATA[《effective c++》第一遍简记]]></title><link>https://blog.youkuaiyun.com/m0_37579288/article/details/80843202</link><guid>https://blog.youkuaiyun.com/m0_37579288/article/details/80843202</guid><author>m0_37579288</author><pubDate>Thu, 28 Jun 2018 14:50:58 +0800</pubDate><description><![CDATA[1.将c++视为一个语言组	次语言 （1）c （2）Object-Oriented C++ （3）Template C++ （4）STL	c++高效编程守则视状况而变化，取决于你使用c++的哪一部分2.尽量以const,enum,inline替换#define	#define定义的记号在编译器处理源码之前就被预处理器移走了，可能并未进入symbol table	例   #define ASPECT...]]></description><category></category></item><item><title><![CDATA[《剑指offer》66：矩阵中的路径]]></title><link>https://blog.youkuaiyun.com/m0_37579288/article/details/80830447</link><guid>https://blog.youkuaiyun.com/m0_37579288/article/details/80830447</guid><author>m0_37579288</author><pubDate>Wed, 27 Jun 2018 15:55:10 +0800</pubDate><description><![CDATA[题目:请设计一个函数，用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵任意一格开始，每一步可以在矩阵中向上下左右移动一格。如果一条路径经过了矩阵的某一格，那么该路径不能再次进入该格子。例如在下面的3*4矩阵中包含一条字符串‘`bcced'，的路径(路径中的字母用斜体表示)。但矩阵中不包含字符串“abcd”的路径，因为字符串的第一个字符b占据了矩阵中的第一行第二个格子之后，...]]></description><category></category></item><item><title><![CDATA[《剑指offer》67.机器人的运动范围]]></title><link>https://blog.youkuaiyun.com/m0_37579288/article/details/80333618</link><guid>https://blog.youkuaiyun.com/m0_37579288/article/details/80333618</guid><author>m0_37579288</author><pubDate>Wed, 16 May 2018 10:44:43 +0800</pubDate><description><![CDATA[题目：地上有个m行n列的方格。一个机器人从坐标(0,0)的格子开始移动，它每一次可以向左、右、上、下移动一格，但不能进入行坐标和列坐标的数位之和大于k的格子。例如，当k为18时，机器人能够进入方格(35,37)，因为3+5+3+7=18.但它不能进入方格(35,38)，因为3+5+3+8=19.请问该机器人能够达到多少格子？思路：实现代码：#include &amp;lt;iostream&amp;gt;

vo...]]></description><category></category></item><item><title><![CDATA[分享一个视频剪切程序及源代码]]></title><link>https://blog.youkuaiyun.com/m0_37579288/article/details/80207585</link><guid>https://blog.youkuaiyun.com/m0_37579288/article/details/80207585</guid><author>m0_37579288</author><pubDate>Sat, 05 May 2018 17:24:23 +0800</pubDate><description><![CDATA[最近在测试视频序列，因为编码一段视频时间太长了，就随手写了个简单的视频剪切程序用来剪指定的几帧，方便测试，代码很简单现把它分享一下，如果用MFC做个图形界面会更好。    不能选0积分，就选了1积分，下载链接：https://download.youkuaiyun.com/download/m0_37579288/10394440...]]></description><category></category></item><item><title><![CDATA[POJ 做过的算法题汇总]]></title><link>https://blog.youkuaiyun.com/m0_37579288/article/details/80097368</link><guid>https://blog.youkuaiyun.com/m0_37579288/article/details/80097368</guid><author>m0_37579288</author><pubDate>Thu, 26 Apr 2018 18:38:57 +0800</pubDate><description><![CDATA[看了一下poj笔记记录第一道题的时间，最早的一道题距今有5个月了，当时还在看Linux下的驱动，只是抱着有趣的心态，接触了下poj。在前几天把剑指offer看完之后，打算将算法题归类，按各种类别来自己完成。目前发现一个leetcode面试题平台，打算从poj转向leetcode，并把数据结构算法做个详细的总结。下面是以前的poj题总结,也有贴网上看的别人的实现代码。1.poj1182食物链Desc...]]></description><category></category></item></channel></rss>