首页
技术小册
AIGC
面试刷题
技术文章
MAGENTO
云计算
视频课程
源码下载
PDF书籍
「涨薪秘籍」
登录
注册
如何准备面试中的算法
字符串算法导读
旋转字符串
字符串包含
字符串转换成整数
回文判断
最长回文子串
字符串的全排列
数组算法导读
寻找最小的k个数
寻找和为定值的两个数
寻找和为定值的多个数
最大连续子数组和
跳台阶问题
奇偶调序
荷兰国旗
矩阵相乘
完美洗牌算法
K个最小和
树-算法导读
透彻了解红黑树
B树
最近公共祖先LCA问题
R树:处理空间存储问题
有序数组的查找
行列递增矩阵的查找
出现次数超过一半的数字
当前位置:
首页>>
技术小册>>
编程之道-算法面试(上)
小册名称:编程之道-算法面试(上)
## 备战面试中算法的五个步骤 ## 对于立志进一线互联网公司,同时不满足于一辈子干纯业务应用开发,希望在后端做点事情的同学来说,备战面试中的算法,分为哪几个步骤呢?如下: ### 1、掌握一门编程语言 ### 首先你得确保你已掌握好一门编程语言: - C的话,推荐Dennis M. Ritchie & Brian W. Kernighan合著的《C程序设计语言》,和《C和指针》; - C++ 则推荐《C++ Primer》,《深度探索C++对象模型》,《Effective C++》; - Java推荐《Thinking in Java》,《Core Java》,《Effictive Java》,《深入理解Java虚拟机》。 掌握一门语言并不容易,不是翻完一两本书即可了事,语言的细枝末节需要在平日不断的编程练习中加以熟练。 ### 2、过一遍微软面试100题系列 ### [微软面试100题系列](http://blog.csdn.net/column/details/ms100.html),不管面试题千变万化,始终不离两点:①看你基本知识点的掌握情况;②编程基本功。 而当你看了一遍微软面试100题之后(不要求做完),你自会意识到:数据结构和算法在笔试面试中的重要性。 ### 3、苦补数据结构基础 ### 如果学数据结构,可以看我们在大学里学的任一本数据结构教材都行,如果你觉得实在不够上档次,那么可以再看看《STL源码剖析》。 然后,你会发现:大部分的面试题都在围绕一个点:基于各种数据结构上的增删改查。如字符串的查找翻转,链表的查找遍历合并删除,树和图的查找遍历,后来为了更好的查找,我们想到了排序,排序仍然不够,我们有了贪心、动态规划,再后来东西多了,于是有了海量数据处理,资源有限导致人们彼此竞争,出现了博弈组合概率。 ### 4、看算法导论 ### 《算法导论》上的前大部分的章节都在阐述一些经典常用的数据结构和典型算法(如[二分查找],[快速排序]、[Hash表],以及一些高级数据结构(诸如[红黑树]、[B树],如果你已经学完了一本数据结构教材,那么建议你着重看贪心、动态规划、图论等内容,这3个议题每一个议题都大有题目可出。同时,熟悉[常用算法的时间复杂度] 如果算法导论看不懂,你可以参看本博客。 ### 5、刷leetcode ### - 推荐两个面试编程网站:一个是http://leetcode.com/ ,leetcode是国外一网站,它上面有不少编程题;另外一个是http://www.careercup.com/ ,而后这个网站的创始人写了本书,叫《careercup cracking coding interview》,最终这本英文书被图灵教育翻译出版为《程序员面试金典》。 此外,多看看优秀的开源代码,如[nginx](https://github.com/nginx/nginx)或[redis](http://redis.io/),多做几个项目加以实践之,尽早实习(在一线互联网公司实习3个月可能胜过你自个黑灯瞎火摸爬滚打一年)。 当然,如果你是准备社招,且已经具备了上文所说的语言 & 数据结构 & 算法基础,可以直接跳到本第五步骤,开始刷leetcode。 ## 后记 ## 学习最忌心浮气躁,急功近利,即便练习了算法,也不一定代表能万无一失通过笔试面试关,因为总体说来,在一般的笔试面试中,70%**基础**+ 30%**coding能力**(含算法),故如果做到了上文中的5个步骤,还远远不够,最后,我推荐一份非算法的书单,以此为大家查漏补缺(不必全部看完,欢迎大家补充): 1. 《深入理解计算机系统》 2. W.Richard Stevens著的《TCP/IP详解三卷》,《UNIX网络编程二卷》,《UNIX环境高级编程:第2版》,详见此[豆瓣页面](http://book.douban.com/search/W.Richard%20Stevens); 最后望大家循序渐进,踏实前进,若实在觉得算法 & 编程太难,转产品、运营、测试、运维、前端、设计都是不错的选择,因为虽然编程有趣,但不一定人人适合编程。
下一篇:
字符串算法导读
该分类下的相关小册推荐:
数据结构与算法(上)
数据结构与算法(下)
业务开发实用算法精讲
编程之道-算法面试(下)
数据结构与算法之美
算法面试通关 50 讲
数据结构与算法(中)