<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[假正经Leo先生]]></title><description><![CDATA[越努力，越幸运。]]></description><link>https://blog.youkuaiyun.com/Vickers_xiaowei</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Vickers_xiaowei]]></copyright><item><title><![CDATA[包含min函数的栈]]></title><link>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/124563301</link><guid>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/124563301</guid><author>Vickers_xiaowei</author><pubDate>Fri, 04 Nov 2022 18:06:41 +0800</pubDate><description><![CDATA[文章目录方法一：辅助栈list模拟栈
定义栈的数据结构，请在该类型中实现一个能够得到栈的最小元素的 min 函数在该栈中，调用 min、push 及 pop 的时间复杂度都是 O(1)。

方法一：辅助栈
要做出这道题目，首先要理解栈结构先进后出的性质。
对于栈来说，如果一个元素 a 在入栈时，栈里有其它的元素 b, c, d，那么无论这个栈在之后经历了什么操作，只要 a 在栈中，b, c, d 就一定在栈中，因为在 a 被弹出之前，b, c, d 不会被弹出。
因此，在操作过程中的任意一个时刻，只要栈顶的]]></description><category></category></item><item><title><![CDATA[两个栈实现一个队列]]></title><link>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/124562757</link><guid>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/124562757</guid><author>Vickers_xiaowei</author><pubDate>Fri, 04 Nov 2022 18:05:28 +0800</pubDate><description><![CDATA[文章目录双栈
用两个栈实现一个队列。队列的声明如下，请实现它的两个函数 appendTail 和 deleteHead ，分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素，deleteHead 操作返回 -1 )

type CQueue struct {

}


func Constructor() CQueue {

}


func (this *CQueue) AppendTail(value int)  {

}


func (this *CQueue) DeleteH]]></description><category></category></item><item><title><![CDATA[Go语言自己实现Itoa和Atoi，字符转数字，数字转字符]]></title><link>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/124784873</link><guid>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/124784873</guid><author>Vickers_xiaowei</author><pubDate>Sun, 15 May 2022 17:43:53 +0800</pubDate><description><![CDATA[Itoa
不适用任何库，纯代码实现
func itoa(i int) (ret string) {
	neg := false
	if i &lt; 0 {
		i = -i
		neg = true
	} else if i == 0 {
		return "0"
	}

	var cs []string
	for i &gt; 0 {
		cs = append(cs, string(i%10+'0'))
		i /= 10
	}
	for i, j := 0, len(cs)-1; i &lt; j;]]></description><category></category></item><item><title><![CDATA[Go语言代码优化]]></title><link>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/124500218</link><guid>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/124500218</guid><author>Vickers_xiaowei</author><pubDate>Fri, 29 Apr 2022 17:08:33 +0800</pubDate><description><![CDATA[string和[]byte之间的下相互转换
import (
	"encoding/json"
	"fmt"
	"unsafe"
)

func string2bytes(s string) []byte {
	return *(*[]byte)(unsafe.Pointer(&amp;s))
}

func bytes2string(b []byte) string {
	return *(*string)(unsafe.Pointer(&amp;b))
}

type Man struct {
	Age]]></description><category></category></item><item><title><![CDATA[初识PySpark]]></title><link>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/124021519</link><guid>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/124021519</guid><author>Vickers_xiaowei</author><pubDate>Thu, 07 Apr 2022 17:14:07 +0800</pubDate><description><![CDATA[PySpark简介：https://www.codingdict.com/article/8880
安装配置Java、Scala、PySpark环境

]]></description><category></category></item><item><title><![CDATA[解决vscode中go插件下载失败的问题]]></title><link>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/121444535</link><guid>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/121444535</guid><author>Vickers_xiaowei</author><pubDate>Sat, 20 Nov 2021 19:58:56 +0800</pubDate><description><![CDATA[由于网络的原因，vscode自动下载go插件时大概率是失败的，但vscode又经常弹出窗口要安装插件。为了解决这个问题，我们需要手动下载go插件
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct

然后重启vscode，重新去下载，就可以下载下来了。

...]]></description><category></category></item><item><title><![CDATA[ElasticSearch简介]]></title><link>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/111773458</link><guid>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/111773458</guid><author>Vickers_xiaowei</author><pubDate>Sun, 08 Aug 2021 13:54:34 +0800</pubDate><description><![CDATA[什么是ElasticSearch

基于Apache Lucene构建的开源搜索引擎
采用Java编写，提供简单易用的RESTFul API
轻松的横向扩展，支持PB级的结构化和非结构化的海量数据梳理

可用场景

海量数据分析引擎
站内搜索引擎
数据仓库


...]]></description><category></category></item><item><title><![CDATA[【数据结构】数据结构常见链表面试题剖析（上）]]></title><link>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/119279513</link><guid>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/119279513</guid><author>Vickers_xiaowei</author><pubDate>Sat, 31 Jul 2021 18:36:21 +0800</pubDate><description><![CDATA[反转链表
定义一个函数，输入一个链表的头节点，反转该链表并输出反转后链表的头节点。
来自：https://leetcode-cn.com/problems/fan-zhuan-lian-biao-lcof/
/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     ListNode *next;
 *     ListNode(int x) : val(x), next(NULL) {}
 * ]]></description><category></category></item><item><title><![CDATA[欢迎使用优快云-markdown编辑器(*￣︶￣)]]></title><link>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/114234168</link><guid>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/114234168</guid><author>Vickers_xiaowei</author><pubDate>Sun, 28 Feb 2021 18:08:54 +0800</pubDate><description><![CDATA[这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题，有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能，丰富你的文章UML 图表FLowchart流程图导出与导入导出导入
欢迎使用Markdown编辑器
你好！ 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar]]></description><category></category></item><item><title><![CDATA[thrift协议]]></title><link>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/110489760</link><guid>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/110489760</guid><author>Vickers_xiaowei</author><pubDate>Wed, 02 Dec 2020 16:31:53 +0800</pubDate><description><![CDATA[Server(single-threaded, event-driven etc)
服务器进程调度
Processor(compiler generated)
RPC接口处理函数分发，IDL定义接口的实现将挂接到这里面
Protocol (JSON, compact etc)
协议
Transport(raw TCP, HTTP etc)
网络传输

]]></description><category></category></item><item><title><![CDATA[学习资源链接]]></title><link>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/109502988</link><guid>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/109502988</guid><author>Vickers_xiaowei</author><pubDate>Tue, 24 Nov 2020 10:29:10 +0800</pubDate><description><![CDATA[梯子教程：https://www.tizi365.com/archives/257.html
编程之家：https://www.jb51.cc/go/187657.html
菜鸟教程：https://www.runoob.com/

]]></description><category></category></item><item><title><![CDATA[抽象工厂]]></title><link>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/108425495</link><guid>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/108425495</guid><author>Vickers_xiaowei</author><pubDate>Sat, 05 Sep 2020 23:02:48 +0800</pubDate><description><![CDATA[抽象工厂
抽象工厂模式（Abstract Factory Pattern）是围绕一个超级工厂创建其他工厂。该超级工厂又称为其他工厂的工厂。这种类型的设计模式属于创建型模式，它提供了一种创建对象的最佳方式。
在抽象工厂模式中，接口是负责创建一个相关对象的工厂，不需要显式指定它们的类。每个生成的工厂都能按照工厂模式提供对象。
意图：提供一个创建一系列相关或相互依赖对象的接口，而无需指定它们具体的类。
主要解决：主要解决接口选择的问题。
何时使用：系统的产品有多于一个的产品族，而系统只消费其中某一族的产品。
如何]]></description><category></category></item><item><title><![CDATA[简单工厂模式]]></title><link>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/108333611</link><guid>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/108333611</guid><author>Vickers_xiaowei</author><pubDate>Tue, 01 Sep 2020 09:00:30 +0800</pubDate><description><![CDATA[简单工厂
package main

import "fmt"

type Food interface {
	Eat()
}
type Rice struct {
}

func (r *Rice) Eat() {
	fmt.Println("Eat rice")
}

type Noodles struct {
}

func (r *Noodles) Eat() {
	fmt.Println("Eat Noodles")
}

func NewFood(choose string) Food {
	i]]></description><category></category></item><item><title><![CDATA[Go Modules 详解使用]]></title><link>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/108269809</link><guid>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/108269809</guid><author>Vickers_xiaowei</author><pubDate>Thu, 27 Aug 2020 22:42:56 +0800</pubDate><description><![CDATA[文章目录创建一个新模块添加依赖项升级依赖项删除未使用的依赖项总结
自从 Go 官方从去年推出 1.11 之后，增加新的依赖管理模块并且更加易于管理项目中所需要的模块。模块是存储在文件树中的 Go 包的集合，其根目录中包含 go.mod 文件。 go.mod 文件定义了模块的模块路径，它也是用于根目录的导入路径，以及它的依赖性要求。每个依赖性要求都被写为模块路径和特定语义版本。
从 Go 1.11 开始，Go 允许在 $GOPATH/src 外的任何目录下使用 go.mod 创建项目。在 $GOPATH/sr]]></description><category></category></item><item><title><![CDATA[C++迭代器失效]]></title><link>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/106884779</link><guid>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/106884779</guid><author>Vickers_xiaowei</author><pubDate>Sun, 21 Jun 2020 14:29:21 +0800</pubDate><description><![CDATA[文章目录序列式容器vectordeque关联式容器
序列式容器
vector
向量容器。底层是动态开辟的一维数组，内存可增长，Linux每次增长2倍，Windows每次1.5倍。

erase(it)会使it之后节点的迭代器失效。避免方法就是it=erase(it);
push_back()会导致若干节点迭代器失效。

deque
双端队列容器。底层是动态开辟的二维数组，一位数组里全部存的是指针，二维数组是动态开辟的，所以说deque的底层是一个部分连续整体不  连续的结构

erase(it)指向的是de]]></description><category></category></item><item><title><![CDATA[顺序表存储，文件保存]]></title><link>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/106727542</link><guid>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/106727542</guid><author>Vickers_xiaowei</author><pubDate>Sat, 13 Jun 2020 08:41:17 +0800</pubDate><description><![CDATA[#include&lt;fstream&gt;
#include&lt;iostream&gt;
#include&lt;string&gt;
#include&lt;sstream&gt;
using namespace std;

class student
{
	string ID;
	string name;
public:
	bool operator&lt;(student stu);
	friend ostream &amp; operator&lt;&lt;(ostream &amp; s,]]></description><category></category></item><item><title><![CDATA[C++实现单链表]]></title><link>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/106254484</link><guid>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/106254484</guid><author>Vickers_xiaowei</author><pubDate>Thu, 21 May 2020 15:15:57 +0800</pubDate><description><![CDATA[文章目录C++实现单链表C++对象构建与使用，error: taking address of temporary [-fpermissive]error: default argument given for parameter 1 of ‘’ [-fpermissive]
C++实现单链表
C++对象构建与使用，error: taking address of temporary [-fpermissive]
class Node
{
private:
    int val;
    Node *ne]]></description><category></category></item><item><title><![CDATA[Git常见命令]]></title><link>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/105832864</link><guid>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/105832864</guid><author>Vickers_xiaowei</author><pubDate>Wed, 29 Apr 2020 10:13:13 +0800</pubDate><description><![CDATA[文章目录远端同步到本地分支操作本地同步到远端查看Git 日志Git比较操作回滚操作
远端同步到本地
git clone &lt;git远端仓库链接&gt;   "克隆一个远端仓库到本地，-b branch检出分支"
git pull origin &lt;branch&gt; 	"更新&lt;branch&gt;仓库的远端分支到本地"

分支操作
git checkout -b feature_x...]]></description><category></category></item><item><title><![CDATA[设计模式0]]></title><link>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/105805479</link><guid>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/105805479</guid><author>Vickers_xiaowei</author><pubDate>Tue, 28 Apr 2020 11:06:01 +0800</pubDate><description><![CDATA[Golang语言是面向接口语言，并非面向对象语言。为了方便使用，有了接口：https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/104630797
文章目录封装继承多态
封装
import包封装隔离，大小写实现封装，小写对象外不可见，大写对象外可见。
type Human struct{
	name string
}
func(h* Human...]]></description><category></category></item><item><title><![CDATA[数据库表的约束]]></title><link>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/105465215</link><guid>https://blog.youkuaiyun.com/Vickers_xiaowei/article/details/105465215</guid><author>Vickers_xiaowei</author><pubDate>Sun, 12 Apr 2020 21:52:48 +0800</pubDate><description><![CDATA[表的约束
为了保证数据的合法性，除了数据类型限制，还需要有其它约束：
表的约束很多，这里主要介绍如下几个： null/not null,default, comment, zerofill，primary key，
auto_increment，unique key 。
空属性
两个值：null（默认的）和not null(不为空)
数据库默认字段基本都是字段为空，但是实际开发时，尽可能保证字段不...]]></description><category></category></item></channel></rss>