0%

问题引入

有一个长字符串string,现在需要在该字符串中查找到一个特定短字符串pattern,并返回其位置。

上述问题为经典的字符串查找问题,这类问题数据算法的基础问题,应当熟记解决方法。

Brute-Force算法

最简单的方案就是分别对string和pattern的每个位置进行依次比较。这样就会产生两个循环体分别对string和pattern进行遍历,很容易得出时间复杂度为string长度的二次幂。

Read more »

前言

前段时间Github上面华为开源的项目被指违反开源许可证的事情闹得不小,事件传送门。从这个事情可以看出,很大一部分国内的开发人员对于开源的概念还是处于懵懂的状态,对于开源与版权的关系还是搞不清楚。那么,对于开源的项目要如何维护自己的权益,如何遵守社区的规范呢?

开源协议

相信大家在写代码的时候都会先去Github上面找找有没有前人的经验可以借鉴,但是通常都会忽略的是,很多项目都有开源许可证。如果一不小心违反了开源许可证所规定的内容,就容易发生与上面的华为员工一样的情况,被原作者要求按照许可证修改你的项目,甚至可能面临被起诉的风险。

Read more »

前言

使用Hexo创建博客很方便,但是图片的管理是一件很头痛的事情。最开始想要使用图床的方式来引用图片,但是止于图床中图片管理不易和难以寻找一个稳定的图床。后来发现了Hexo原生支持的图片引用方式,Github地址

hexo-asset-image的使用

开启post_asset_folder

在博客的_config.yml配置中将post_asset_folder置位true。

1
post_asset_folder:true
Read more »

前言

本文演示了如何用Gitflow来管理单个发布循环。

初始化中央仓库

这时,Git会为你默认创建一个master分支,将你的最初的项目代码提交到master分支上。

Read more »

前言

本文章基于Windows 7+git version 2.14.1.windows.1+NodeJS v6.11.4+hexo-cli 1.0.3,不同平台和版本的搭建过程可能略有差异。

准备工作

安装Git

下载并安装Git

检验安装成功:

1
git --version
Read more »