- 博客(75)
- 收藏
- 关注
原创 变态跳台阶问题的解题思路
简介:本文主要记录了 变态跳台阶问题 的推导过程题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。解题思路问题转换这个问题我们可以转换思路,将其转换成求树的节点个数的题目。假设存在一棵树,它的根节点是N,它的子节点从左往右依次为 n-1, n-2, … 直到0。同理,根节点子节点的子...
2018-04-08 18:13:33
1750
原创 Innodb 锁机制
本文试图讲清楚 InnoDB 中存在的各种锁,以及它们锁定的区别。前言 锁是数据库系统区别于文件系统的一个关键特性,锁机制用于管理对共享资源的并发访问。不同数据库和不同搜索引擎都可能有不同的锁机制,MyISAM 引擎的锁是表锁设计,并发读没有问题,但是并发写入可能就存在一定的问题。 Microsoft SQL Server 在2005版本之前是页锁设计,相对于 MyISAM 并...
2018-03-31 22:46:04
4175
1
原创 MySQL 外键分析
本文主要介绍了 MySQL 外键的一些特性 定义外键用来保证参照完整性,MySQL 数据库的 MyISAM 存储引擎本身并不支持外键,对于外键的定义只是起一个注释的作用,而 InnoDB 存储引擎则完整支持外键约束。外键的定义如下:[CONSTRAINT [symbol]] FOREIGN KEY [index_name] (index_col_name,...)REF...
2018-03-27 13:34:19
429
原创 Redis 源码阅读之 dict
本文主要介绍了 Redis 的基础数据结构 dict 的实现,并描述了其渐进式 rehash 的操作注意: 本文基于 Redis 3.0.0 的代码进行分析的dict 介绍dict 又称符号表(symbol table),关联数组(associative array)或映射(map),是一种用于保存键值对的抽象数据结构。Redis 实现使用的C语言并没有内置 dict 这种数据...
2018-03-14 00:40:05
599
2
原创 Go与数据结构之二叉搜索树
简介: 利用Go语言实现二叉搜索树并为其编写单元测试说明本文是我读了《数据结构与算法分析 - C语言描述》后总结的二叉搜索树的实现,在本文中涉及到的代码都可以在我的Github仓库 bwangel23/LeetCode 中找到。描述对于二叉树中的任意节点X,它的左子树中所有关键字的值小于X的关键字值,而它的右子树中所有关键字值大于X的关键字值,那么这棵树就是一颗二叉搜索...
2018-03-02 00:05:32
421
原创 Go 语言的 Type Switch 语句解析
讲述了Go语言中 Type Swith 的用法以及获取对应变量的一些特殊情况。 Type Switch 的基本用法Type Switch 是 Go 语言中一种特殊的 switch 语句,它比较的是类型而不是具体的值。它判断某个接口变量的类型,然后根据具体类型再做相应处理。注意,在 Type Switch 语句的 case 子句中不能使用fallthrough。它的用法如下。
2018-02-03 01:31:36
9713
原创 MySQL 日志管理
简介: 讲述了MySQL中的日志及配置方式1. MySQL日志分类错误日志: 记录MySQL服务器启动、关闭及运行错误等信息二进制日志: 以二进制的方式记录数据库中除SELECT以外的所有操作查询日志: 记录查询的信息慢查询日志: 记录执行时间超过指定时间的操作中继日志: 备库将主库的日志复制到自己的中继日志中通用日志: 审计哪个账号、在哪个时段、做了哪些事情事务日志...
2018-01-01 23:11:33
255
原创 TCP/IP 读书笔记
本文是本人在阅读《TCP/IP 详解:卷一》时所做的一些笔记,记录一些我认为比较重要的知识点或者句子,较为凌乱,仅为本人参考使用,并非是分享知识的博客文章。
2017-12-10 23:17:05
297
原创 Python的collections模块小结
本文章的目标是逐步总结Python中collection模块的用法,会不定期进行更新。目前总结了Counter类的用法
2017-12-10 23:14:42
482
原创 Django的override_settings修饰器浅析
Django的Settings模块代码说明Django的override_settings修饰器分析
2017-12-10 23:11:52
1301
原创 浅析Django中import_string的实现
importlib.import_module 函数的功能import_string 函数的实现
2017-11-27 23:33:37
2593
原创 简单聊聊Vim中的自定义快捷键
摘要: Vim中几个Map命令的区别 分享几个自定义的快捷键 前言平常在Vim中自定义快捷键,使用的都是map命令,但最近发现自定义快捷键命令还有好多,如noremap, nmap,vmap等等。所以就想写一篇关于Vim中自定义快捷键的文章,来总结一些Vim中的自定义快捷键的命令和他们的命名方式。与自定义快捷键相关的四个系列命令map系列命令...
2017-11-27 23:25:17
11093
翻译 Python concurrent.futures 文档翻译
摘要: 本文主要是对 Python3 标准库 concurrent.futures 文档的翻译
2017-11-26 12:04:45
1143
翻译 Gevent 的 KeyError
摘要: 本文翻译自 StackOverFlow 上的一篇答案 本文主要解释了gevent的猴子补丁和一个KeyError之间的关系
2017-11-26 12:02:15
972
翻译 Python字符串Format方法示例
摘要: 本文翻译自Python3文档6.1.3.2. Format examples 主要讲述了Pythonstr.format()的一些使用方法
2017-11-26 11:57:32
477
原创 Python中的生成器和协程
摘要: 今天读了《A Curious Course on Coroutines and Concurrency》的,以下为我的笔记。 1. 生成器和协程的异同 2. 协程的一些特性
2017-11-26 11:56:00
1139
翻译 PEP 343: Python的with语句
摘要: Python的with语句用法以及相关的上下文管理协议 如何自己写一个上下文管理器对象,如何利用contextlib来写一个上下文管理器对象
2017-11-26 11:49:48
558
原创 Git submodule 命令简介
摘要: git submodule就是git主仓库在本仓库的配置中记录着子模块仓库对应的名字,路径,远端url,然后创建一个特殊文件去记录子模块仓库目前的commit-id,每次更新子模块就是通过远端路径和commit-id来进行更新
2017-11-20 10:32:38
1093
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人