<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Kelvin的博客]]></title><description><![CDATA[时间会证明坚持的力量！]]></description><link>https://blog.youkuaiyun.com/Albert_1000</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Albert_1000]]></copyright><item><title><![CDATA[MVCC 多版本并发控制]]></title><link>https://blog.youkuaiyun.com/Albert_1000/article/details/125848554</link><guid>https://blog.youkuaiyun.com/Albert_1000/article/details/125848554</guid><author>Albert_1000</author><pubDate>Mon, 18 Jul 2022 14:27:47 +0800</pubDate><description><![CDATA[InnoDB 存储引擎中版本链的作用及原理。]]></description><category></category></item><item><title><![CDATA[Go 自定义排序方法]]></title><link>https://blog.youkuaiyun.com/Albert_1000/article/details/121674840</link><guid>https://blog.youkuaiyun.com/Albert_1000/article/details/121674840</guid><author>Albert_1000</author><pubDate>Thu, 02 Dec 2021 12:56:34 +0800</pubDate><description><![CDATA[Go 自定义排序方法
前言
我们经常需要对数组进行排序，Go内置的sort包提供了一些排序函数来帮助我们实现排序。
对于[]int、[]float、[]string这些基础类型数组，使用sort包提供的下面几个函数进行排序：

sort.Ints
sort.Float64s
sort.Strings

看几个例子：
score := []int{5, 4, 3, 2, 1}
sort.Ints(score)
fmt.Println(score) // 输出[1 2 3 4 5]

score := []fl]]></description><category></category></item><item><title><![CDATA[Java8中的常见函数式接口]]></title><link>https://blog.youkuaiyun.com/Albert_1000/article/details/104687224</link><guid>https://blog.youkuaiyun.com/Albert_1000/article/details/104687224</guid><author>Albert_1000</author><pubDate>Thu, 05 Mar 2020 23:33:26 +0800</pubDate><description><![CDATA[Java8 中的常用函数式接口
内容来自于《Java8实战》




函数式接口
函数描述符
原始类型特化




Predicate
T-&gt;boolean
IntPredicate, LongPredicate, DoublePredicate


Consumer
T-&gt;void
IntConsumer, LongConsumer, DoubleConsumer


Functio...]]></description><category></category></item><item><title><![CDATA[两种姿势教你在CentOS7上正确安装Redis]]></title><link>https://blog.youkuaiyun.com/Albert_1000/article/details/103703467</link><guid>https://blog.youkuaiyun.com/Albert_1000/article/details/103703467</guid><author>Albert_1000</author><pubDate>Wed, 25 Dec 2019 18:05:40 +0800</pubDate><description><![CDATA[前言
Redis是开源的非关系型数据库，可用于数据存储、缓存和消息队列，并且其支持字符串、哈希、列表、集合和有序集合等类型的存储。
本文我们介绍在CentOS7.X系统安装redis的几种方法。
安装
一、yum命令安装
如果你学过CentOS，那对yum命令应该不陌生。Yum（全称为 Yellow dog Updater, Modified）是一个在Fedora和RedHat以及CentOS中的...]]></description><category></category></item><item><title><![CDATA[Python中while循环的基本用法]]></title><link>https://blog.youkuaiyun.com/Albert_1000/article/details/100728685</link><guid>https://blog.youkuaiyun.com/Albert_1000/article/details/100728685</guid><author>Albert_1000</author><pubDate>Wed, 11 Sep 2019 10:25:41 +0800</pubDate><description><![CDATA[文 | 天罡君

while和for都可以使程序重复执行某一段代码（又称作循环体），区别是for循环用于针对集合中的每一个元素都一个代码块，而while循环在表达式为True的情况下会不断地执行，直到指定条件不满足为止。
今天我们一起来学习下while关键字的使用。
1.while循环简介
while在英语中的解释是：当…时候。
在Python中的语法是：
while 表达式:
    循环体...]]></description><category></category></item><item><title><![CDATA[Python如何获取用户输入？]]></title><link>https://blog.youkuaiyun.com/Albert_1000/article/details/99892556</link><guid>https://blog.youkuaiyun.com/Albert_1000/article/details/99892556</guid><author>Albert_1000</author><pubDate>Tue, 20 Aug 2019 22:40:26 +0800</pubDate><description><![CDATA[文 | 天罡君


本文首发于公众号「猿天罡」，转载请注明出处，谢谢！

有时候，我们编写的程序需要从用户那儿“拿到”一些数据才能继续执行下去，比如，判断某人是否到了法定投票年龄，需要用户自己输入名字和年龄才行。
Python要“拿到”用户输入的数据比起Java来可简单多了，只需要学会input()方法即可。
下面我们一起来学习一下input()函数的基本用法，迈出编写交互式程序的第一步！
1...]]></description><category></category></item><item><title><![CDATA[LeetCode第20题：有效的括号]]></title><link>https://blog.youkuaiyun.com/Albert_1000/article/details/99452709</link><guid>https://blog.youkuaiyun.com/Albert_1000/article/details/99452709</guid><author>Albert_1000</author><pubDate>Tue, 13 Aug 2019 17:25:23 +0800</pubDate><description><![CDATA[本文首发于公众号「猿天罡」，转载请注明出处，谢谢！

本题源自LeetCode，题号20。
1.题目描述
给定一个只包括 '('，')'，'{'，'}'，'['，']' 的字符串，判断字符串是否有效。
有效字符串需满足：


左括号必须用相同类型的右括号闭合。


左括号必须以正确的顺序闭合。


注意空字符串可被认为是有效字符串。

示例 1:
输入: "()"
输出: true

示例 2:...]]></description><category></category></item><item><title><![CDATA[Python字典嵌套]]></title><link>https://blog.youkuaiyun.com/Albert_1000/article/details/99087889</link><guid>https://blog.youkuaiyun.com/Albert_1000/article/details/99087889</guid><author>Albert_1000</author><pubDate>Sat, 10 Aug 2019 17:02:59 +0800</pubDate><description><![CDATA[文 | 猿天罡

前言
前两篇文章，我们学习了Python字典的基本用法和遍历字典的三种方式
为了让小伙伴们不耗费多余的注意力，我们举的例子都尽可能的简单，不信你回去看看，字典键对应的值都是基本数据类型（字符串、数字等）。
其实，字典里键对应的值可以很复杂。
我们可以在字典中存储列表，在列表中存储字典，在字典中存储字典等等。
Python中几乎所有的数据类型，都可以存进字典里。
学习不是一日...]]></description><category></category></item><item><title><![CDATA[遍历Python字典]]></title><link>https://blog.youkuaiyun.com/Albert_1000/article/details/98884576</link><guid>https://blog.youkuaiyun.com/Albert_1000/article/details/98884576</guid><author>Albert_1000</author><pubDate>Thu, 08 Aug 2019 20:28:50 +0800</pubDate><description><![CDATA[前言
一个Python字典短则包含一个键值对，长则可能数以百万计。所以我们不会遍历字典可不行。因为Python字典是由一系列键值对组成的，所以我们可以遍历字典的所有键值对、键或值。

1.遍历字典中所有的键值对
我们还是从一个学生字典开始：
student = {'num': '123456', 'name': 'kelvin', 'age': 18}

前面文章中我们知道怎么访问student字...]]></description><category></category></item><item><title><![CDATA[Python爬虫遇到Request-Payload怎么办？]]></title><link>https://blog.youkuaiyun.com/Albert_1000/article/details/98874544</link><guid>https://blog.youkuaiyun.com/Albert_1000/article/details/98874544</guid><author>Albert_1000</author><pubDate>Thu, 08 Aug 2019 16:08:47 +0800</pubDate><description><![CDATA[前言
最近想用 Python 自动地爬取某个站点里的图片，没想到其请求数据是以request payload格式传输给后端进行处理的。博主还是第一次遇到这种情况，写下这篇文章记录一下解决过程。


博主浏览器使用的是 Chrome，下文说的浏览器一律指的是 Chrome浏览器。

POST提交数据常见的几种Content-Type
在网络请求中常用的Content-Type有很多，但是在POST请...]]></description><category></category></item><item><title><![CDATA[Python字典的基本使用]]></title><link>https://blog.youkuaiyun.com/Albert_1000/article/details/98673224</link><guid>https://blog.youkuaiyun.com/Albert_1000/article/details/98673224</guid><author>Albert_1000</author><pubDate>Tue, 06 Aug 2019 23:03:31 +0800</pubDate><description><![CDATA[前言
相比于列表，字典是更为灵活的一种数据结构。它能将相关信息关联起来，本文中我们一起来学习Python字典的基本用法，即如何添加、访问、修改和删除字典中的信息。


1.最简单的字典
在学习Python字典之前，我们一起来看一下字典到底是个什么玩意儿，这样有助于对其建立大体的印象，把抽象的概念具体化。
举个例子，假如你正在帮助学校开发学生管理系统，需要保存单个学生的详细信息（学号、姓名、性别、年...]]></description><category></category></item><item><title><![CDATA[LeetCode第9题：回文数]]></title><link>https://blog.youkuaiyun.com/Albert_1000/article/details/98227054</link><guid>https://blog.youkuaiyun.com/Albert_1000/article/details/98227054</guid><author>Albert_1000</author><pubDate>Fri, 02 Aug 2019 19:14:44 +0800</pubDate><description><![CDATA[本题源自 LeetCode，题号9。
1.题目描述
判断一个整数是否是回文数。回文数是指正序（从左向右）和倒序（从右向左）读都是一样的整数。
示例 1:
输入: 121
输出: true

示例 2:
输入: -121
输出: false
解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。

示例 3:
输入: 10
输出: false
解释: 从右向左读...]]></description><category></category></item><item><title><![CDATA[LeetCode第7题：整数反转]]></title><link>https://blog.youkuaiyun.com/Albert_1000/article/details/97931964</link><guid>https://blog.youkuaiyun.com/Albert_1000/article/details/97931964</guid><author>Albert_1000</author><pubDate>Wed, 31 Jul 2019 16:44:25 +0800</pubDate><description><![CDATA[本文首发于公众号「猿天罡」，转载请注明出处
个人网站：https://liuwynn.github.io

本题源自 LeetCode ，题号7。
1.题目描述
给出一个 32 位的有符号整数，你需要将这个整数中每位上的数字进行反转。
示例 1:
输入: 123
输出: 321

示例 2:
输入: -123
输出: -321

示例 3:
输入: 120
输出: 21

注意:
假设我们的环境...]]></description><category></category></item><item><title><![CDATA[LeetCode第1题：两数之和]]></title><link>https://blog.youkuaiyun.com/Albert_1000/article/details/97835528</link><guid>https://blog.youkuaiyun.com/Albert_1000/article/details/97835528</guid><author>Albert_1000</author><pubDate>Wed, 31 Jul 2019 01:07:30 +0800</pubDate><description><![CDATA[本文首发于公众号「猿天罡」
个人网站：https://liuwynn.github.io

题目来源于 LeetCode，第一题。
1. 题目描述
给定一个整数数组 nums 和一个目标值 target，请你在该数组中找出和为目标值的那 两个 整数，并返回他们的数组下标。
你可以假设每种输入只会对应一个答案。但是，你不能重复利用这个数组中同样的元素。
示例:
给定 nums = [2, 7, 1...]]></description><category></category></item><item><title><![CDATA[Python if 语句]]></title><link>https://blog.youkuaiyun.com/Albert_1000/article/details/97575221</link><guid>https://blog.youkuaiyun.com/Albert_1000/article/details/97575221</guid><author>Albert_1000</author><pubDate>Sun, 28 Jul 2019 00:02:53 +0800</pubDate><description><![CDATA[前言
程序有三大结构：顺序、循环和选择。貌似有数学家给出了证明，任何一件复杂的事都是由这三种结构组成的。
拿我们的人生举例，每个人都要经历从出生到死亡的顺序结构，在短暂的生命里总是会重复（循环）做同一件事，上学、工作等等，同时我们也面临着许多选择，每一个选择或多或少决定着人生的走向。
从这点来说的话，程序甚至可以模拟人生。
言归正传，今天给大家介绍一下新的结构——选择结构。

1. 简单示例
首先...]]></description><category></category></item><item><title><![CDATA[配置Python环境变量]]></title><link>https://blog.youkuaiyun.com/Albert_1000/article/details/89409818</link><guid>https://blog.youkuaiyun.com/Albert_1000/article/details/89409818</guid><author>Albert_1000</author><pubDate>Fri, 26 Jul 2019 22:11:12 +0800</pubDate><description><![CDATA[前言
如果有人装完 python 安装程序后，在命令窗口输入 python 并回车后，看到一条错误消息，指出 python 是无法识别的命令，那么希望这篇文章能帮助到你。
原因：安装时没有勾选 Add Python to PATH
下面是解决方法↓↓↓

解决方法
勾选 Add Python to PATH的作用是什么？
为什么在安装Python程序时要勾选Add Python to PATH？因...]]></description><category></category></item><item><title><![CDATA[在Windows系统中搭建python编程环境]]></title><link>https://blog.youkuaiyun.com/Albert_1000/article/details/89380446</link><guid>https://blog.youkuaiyun.com/Albert_1000/article/details/89380446</guid><author>Albert_1000</author><pubDate>Fri, 26 Jul 2019 22:06:04 +0800</pubDate><description><![CDATA[前言
在学习之初应尽可能的将精力专注于Python语言本身，而不是关心用什么操作系统。有人会说，网上搜索结果都是说最好在Linux系统里学习Python。但为了学习一门语言而再去捣鼓Linux，有点舍本逐末的感觉。虽说工欲善其事必先利其器，但是等你Python有一定水平之后再考虑也不迟。因为大多数人使用的还是Windows系统，所以今天这篇文章便是在Windows系统中搭建Python编程环境的教...]]></description><category></category></item><item><title><![CDATA[Python元组]]></title><link>https://blog.youkuaiyun.com/Albert_1000/article/details/97392999</link><guid>https://blog.youkuaiyun.com/Albert_1000/article/details/97392999</guid><author>Albert_1000</author><pubDate>Fri, 26 Jul 2019 15:51:11 +0800</pubDate><description><![CDATA[前言
回顾前面的几篇文章，我给大家讲了 Python 中简单的数据类型、列表的操作等等，今天给大家介绍一个新的数据存储结构——元组。

1. 元组的定义
元组看起来和列表很像，但使用圆括号 () 而不是方括号 [] 来标识。定义元组后，就可以使用索引来访问其元素，就像访问列表一样。
举例说明，如果我们要存储一个矩形的长和宽，使用元组来存储的话，可以这样写：
rectangle = (200, 50...]]></description><category></category></item><item><title><![CDATA[操作Python列表Ⅱ]]></title><link>https://blog.youkuaiyun.com/Albert_1000/article/details/97180589</link><guid>https://blog.youkuaiyun.com/Albert_1000/article/details/97180589</guid><author>Albert_1000</author><pubDate>Wed, 24 Jul 2019 23:07:37 +0800</pubDate><description><![CDATA[相关阅读：

Python列表简介
操作Python列表1

前言
前面有几篇文章讲解了怎么创建和使用列表，以及在列表中数据量过大的时候如何循环操作列表。今天我们来学习一下，如何快速的创建数值列表以及如何对列表进行切片。
1. 创建数值列表
需要存储一组数字的原因有很多，例如，在数据可视化中，处理的几乎都是数字（温度、距离、人口等）组成的集合。
列表非常适合用于存储数字集合，Python 也提供了...]]></description><category></category></item><item><title><![CDATA[Ubuntu 启动盘制作教程]]></title><link>https://blog.youkuaiyun.com/Albert_1000/article/details/95632770</link><guid>https://blog.youkuaiyun.com/Albert_1000/article/details/95632770</guid><author>Albert_1000</author><pubDate>Fri, 12 Jul 2019 16:54:08 +0800</pubDate><description><![CDATA[前言
最近几天翻出了以前的旧电脑，心痒难耐，决定捣鼓 Linux 系统。对比了 Linux 各个系统以后，决定安装 Ubuntu 桌面版体验一下。
制作系统盘
因为我是在 windows 系统中制作的系统盘，这里就只说明 windows 系统下制作 Ubuntu 系统盘的方法。
1.1 下载官方镜像
可以去官方网站下载，这里给个 传送门
如果你要长期使用 Ubuntu 系统，建议安装 LTS 版本...]]></description><category></category></item></channel></rss>