μtp(Micro Transport Protocol)是基于UDP实现的一种可靠的传输协议,目前主要用于BitTorrent协议中。它原本被设计用于当BitTorrent的下载与一般程序起冲突时,自动降低BitTorrent的P2P下载速度,这样可以很容易进行带宽控制,不会造成网络拥堵

本文主要参考了μtp协议官方文档中的介绍

阅读全文 »

第一眼看到上面这张图你一定觉得——卧槽!碉堡了!其实它来自于一个国外的网站Sorting Algorithm Animations,是不是很鹅妹子樱:)
言归正传,说到排序算法,在互联网招聘中基本是都会涉及的,这是也基本功,背了不一定能通过笔试面试,但想偷懒不背是不行的。
各种算法的详细过程还是要看书的,在这里也不做过多介绍。本文总结了常见的八种排序算法(含二分查找)的主要思想、复杂度、特点和示例代码,对这方面不熟悉的同学推荐一看。

阅读全文 »

二叉树遍历是数据结构中比较基本的知识,一般的面试中也不屑于考这种死记硬背的问题,但在笔试中还是挺常见的。
要是真在笔试或面试中碰上了这道题,你能快速写出没有错误的二叉树遍历代码吗?
本文总结了二叉树前序、中序、后序、层序这4种遍历算法的代码,并且分成了递归非递归两种版本。

阅读全文 »

计算机专业的学生想找技术类的工作,《剑指offer》这本书是必不可少的。虽然只有50道题,但涵盖大部分的知识点,各种面试时的问题基本都可以从这本书里找到原型。
当初找工作的时候,自己把《剑指offer》至少完整地看了3遍,每道题的代码也敲了大概5、6遍,同时总结了每道题中的思想、方案、要点和注意事项,也就是本文的主要内容。
因为总结的十分精简,不建议没看过原书的人直接看这篇文章,你会完全看不懂。
本文适合已经看过《剑指offer》的同学,它能帮助你快速回想起每道题的重点,能在很短的时间内在脑海里把所有题都过一遍,起到巩固记忆的效果

阅读全文 »

SWIG是个帮助使用C或者C++编写的软件能与其它各种高级编程语言进行嵌入联接的开发工具。
SWIG能应用于各种不同类型的语言,包括常用脚本编译语言,例如Perl, PHP, Python, Tcl, Ruby 和 PHP。
SWIG普遍应用于创建高级语言解析或汇编程序环境、用户接口、作为一种用来测试C/C++或进行原型设计的工具。

阅读全文 »

经过一番折腾,目前自己的这个博客总算是基本完工了,开一贴记录下搭建的过程和问题
本博客主要基于GitHub Pages + Hexo搭建,使用NexT主题,使用Markdown编写博客文章

阅读全文 »

Markdown是一种轻量级的标记语言,语法简介明了,功能比纯文本更强,很适合写博客。
本文记录了Markdown的一些基本语法,以及在写博客时遇到的问题和解决方法。

阅读全文 »

Make工具最主要也是最基本的功能就是通过makefile文件来描述源程序之间的相互关系并自动维护编译工作。而makefile 文件需要按照某种语法进行编写,文件中需要说明如何编译各个源文件并连接生成可执行文件,并要求定义源文件之间的依赖关系。

本文转自招封的博客

阅读全文 »

KMP算法,是由Knuth,Morris,Pratt共同提出的模式匹配算法,其对于任何模式和目标序列,都可以在线性时间内完成匹配查找,而不会发生退化,是一个非常优秀的模式匹配算法。

阅读全文 »