{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Leetcode/Lintcode学习笔记\n",
    "\n",
    "作为一个算法小白,记录整理自己在学习算法过程中的心得,希望对你也有所帮助。\n",
    "\n",
    "## 如何高效地准备算法面试\n",
    "\n",
    "- 在刷题时,总结、归类相似题目\n",
    "- 找出适合同一类题目的模板程序\n",
    "- 每隔固定时间重做以前的题目\n",
    "\n",
    "## 关于代码风格\n",
    "\n",
    "- 代码块可为三大块:异常处理(空串和边界处理),主体,返回\n",
    "- 代码风格(可参考 Google 的编程语言规范)\n",
    "  - 变量名:有意义的变量名\n",
    "  - 缩进:语句块\n",
    "  - 空格:二元运算符、括号两侧\n",
    "  - 可读性:单语句使用花括号等\n",
    "\n",
    "## 关于面试\n",
    "\n",
    "- 程序风格(缩进,括号,变量名等)\n",
    "- Coding 习惯(异常检查,边界处理,数组越界等)\n",
    "- 测试(主动写出合理的测试例)\n",
    "\n",
    "## 在线刷题网站\n",
    "\n",
    "- [Leetcode](https://leetcode.com/),应该是最知名的在线刷题网站了,提供多种编程语言的在线检测,评论区氛围很好,大家会分享思路、讨论问题。\n",
    "- [Lintcode](http://www.lintcode.com/),和 Leetcode 很像,题目也有一定的重合度,没有评论区。有阶梯训练( Ladder ),方便专题学习。\n",
    "- [牛客网](http://www.nowcoder.com/),国内的一个 IT 笔试面试备考平台,有公司真题模考(主要是国内),智能专项练习,在线编程专题多个内容,讨论区有很多校招内容及分享,适合国内找工作的同学。\n",
    "\n",
    "## 题目参考解答\n",
    "\n",
    "- [九章算法](http://www.jiuzhang.com/solutions/),提供 Lintcode 三种语言( Java, C++, Python )的解题答案,我个人在学习过程中大量参考了九章的答案,在此致谢。\n",
    "- [Leetcode 讨论区](https://discuss.leetcode.com/),大家会讨论分享交流不同的解法和思路。\n",
    "- [数据结构与算法/leetcode/lintcode题解](http://algorithm.yuanbin.me/),作者 yuanbin 维护的个人博客,包含算法基础知识、编程题目解析等内容,题目解析部分很详细,本文档的建立也是受其启发,过程中也借鉴学习了很多,在此表示感谢。\n",
    "- [ProgramCreek](http://www.programcreek.com/),个人博客站点,里面有大量关于算法和 Java 相关的内容。Simple Java 中总结的知识点很适合面试前参考。\n",
    "- [水中的鱼](http://fisherlei.blogspot.jp/),leetcode 题目的答案解析, google 搜索的排名很高。\n",
    "- [喜刷刷](http://bangbingsyb.blogspot.jp/),跟“水中的鱼”很像。\n",
    "- [算法精粹 | soulmachine](https://www.gitbook.com/book/soulmachine/algorithm-essentials/details) ,soulmachine 的习题汇编在线阅读地址,有 C++ 和 Java 两个版本。\n",
    "\n",
    "## 参考书籍\n",
    "\n",
    "- [《算法(第4版)》(豆瓣)](https://book.douban.com/subject/19952400/),Robert Sedgewick 教授的书,讲解了基础的数据结构和算法,配有大量图例,深入浅出,讲解非常细致。\n",
    "\n",
    "## 其他资源\n",
    "\n",
    "- [刷题版 | 一亩三分地](http://www.1point3acres.com/bbs/forum-84-1.html),有很多刷题、准备面试的经验分享。\n",
    "- [visualgo](http://visualgo.net/) ,数据结构和算法的可视化演示,对理解算法有帮助。\n",
    "- [Data Structure Visualizations](http://www.cs.usfca.edu/~galles/visualization/Algorithms.html) ,另一个算法可视化演示网站。"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.5.2"
  },
  "toc": {
   "colors": {
    "hover_highlight": "#DAA520",
    "navigate_num": "#000000",
    "navigate_text": "#333333",
    "running_highlight": "#FF0000",
    "selected_highlight": "#FFD700",
    "sidebar_border": "#EEEEEE",
    "wrapper_background": "#FFFFFF"
   },
   "moveMenuLeft": true,
   "nav_menu": {
    "height": "156px",
    "width": "252px"
   },
   "navigate_menu": true,
   "number_sections": true,
   "sideBar": true,
   "threshold": 4,
   "toc_cell": false,
   "toc_section_display": "block",
   "toc_window_display": false,
   "widenNotebook": false
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}