https://blog.csdn.net/wangleishushu/article/details/77413392
http://www.cnblogs.com/tianchi/archive/2012/10/23/2736406.html
https://blog.csdn.net/flydreamGG/article/details/4468995
https://blog.csdn.net/ecnu18918079120/article/details/52994513
https://www.cnblogs.com/codingmengmeng/p/6254325.html
https://www.cnblogs.com/jiahuiyu/p/5415936.html
https://blog.csdn.net/monk1992/article/details/82016647