轻松学算法——互联网算法面试宝典

当前位置:首页 > 计算机/网络 > 计算机理论 > 轻松学算法——互联网算法面试宝典

  • 版 次:1
  • 页 数:
  • 字 数:
  • 印刷时间:2016年07月01日
  • 开 本:16开
  • 纸 张:胶版纸
  • 包 装:平装
  • 是否套装:否
  • 国际标准书号ISBN:9787121291944
作者:赵烨 编著出版社:电子工业出版社出版时间:2016年07月 
编辑推荐
★ 语言轻松易懂,不照本宣科
★ 不仅有原理,还有适用场景
★ 更有互联网应用案例与经验
★ 不论面试还是工作都能让你抓到重点
★ 适合不想钻研晦涩算法书籍的读者
★ 关注算法的具体实践应用
★ 理解和应用算法才是成功的关键
 
内容简介
本书共分为12个章节,首先介绍了一些基础的数据结构,以及常用的排序算法和查找算法;其次介绍了两个稍微复杂一些的数据结构——树和图,还介绍了每种数据结构和算法的适用场景,之后是一些在工作与面试中的实际应用,以字符串、数组、查找等为例介绍了一些常见的互联网面试题及分析思路,便于读者了解这些思路,顺利地通过互联网公司的面试;最后介绍了一些常见的算法思想,便于读者对今后遇到的算法问题更轻易地想出解决方案。本书的讲解轻松有趣,易于读者把烦琐、枯燥的算法学习变为有趣、愉快的学习,把被动学习变为主动学习。本书也介绍了一些会在工作面试中用到的算法。对于一些正在学习算法的人来说,本书*是可以帮你轻松掌握算法的辅助资料;对于已经了解算法的人来说,可以从本书中了解到这些算法是如何在实际工作中使用的。本书适合即将毕业的学生、初入职场的工程师及想补充基础算法知识的人学习,也适合作为一本互联网公司面试的参考书,更是一本不可多得的便于读者时常补习算法知识的收藏宝典。
作者简介
赵烨,Java高级研发工程师。现就职于优酷土豆的来疯直播团队。主要关注高并发、高可用、系统性能优化等内容。乐于学习、乐于分享。博客地址irfen.me。
目  录
目  录
1.1 要用就要提前想好的数据结构—数组 2
1.1.1 什么是数组 2
1.1.2 数组的存储结构 3
1.1.3 数组的特点 6
1.1.4 数组的适用场景 7
1.2 升级版数组—集合 8
1.2.1 什么是集合 8
1.2.2 集合的实现 8
1.2.3 集合的特点 13
1.2.4 集合的适用场景 13
1.2.5 数组与变长数组的性能 14
1.3 数组的其他应用—散列表 14
1.3.1 什么是散列表 15
前  言
前言
互联网越来越热门了,相信每个人都或多或少地在体验如今的互联网带给我们的各种便利。借助之前非常火热的电商,我们可以足不出户地购买衣服和日常用品;现在,就算是一个超级宅的人,也可以不出门便可完成订餐、在线交水电费、通过各种到家服务进行保洁和按摩、通过应用将在超市买的东西轻松配送到家,等等。在线办公在一些行业中也开始流行,视频会议更是可以轻松地实现异地交流。之前我们还需要见面签约,现在越来越多地在进行在线签约。
不得不感谢互联网带给我们的各种便利,但这背后是由很多产品、运营和技术人员的努力在支撑的。
我最初所在的公司属于传统行业,但也是一家服务与互联网公司。相信任何行业的技术员工都想进入互联网公司,这其中的好处有太多:技术的挑战、大用户量、大数据、高并发,这些都是我们所渴望的。
经常听到身边有很多人在抱怨算法不好学、学会了记不住、记住了不知道怎么用等,所以我决定写本书,结合自己的经验讲解一些算法的实际应用及适用场景,希望通过本书帮助更多的朋友进入互联网公司。
媒体评论
本书主要介绍了一些数据结构的基础知识及面试中的常见问题,在看到本书前,我一直感觉大学的数据结构教材比较枯燥,本书将排序、查找、图论、树等重新进行了阐述,不再照本宣科。书中结合作者的工作经验对大量的案例进行了分析,并对算法进行了剖析,具有良好的学习性。在本书中,作者将基础知识融会贯通到工作项目中,对于初学者及应聘者都有很好的指导意义。
优酷直播互动高级技术总监 白云龙
数据结构、算法是软件开发的基础,在大数据时代的海量数据、高并发、高吞吐的需求场景下显得尤为重要。本书会结合日常工作中的应用场景来介绍各种基础数据结构和算法,帮助读者更好地理解其中的精髓。例如,结合Java集合框架来介绍线性数据结构、集合、散列表,结合MySQL索引来介绍B 树等。深入理解数据结构与算法,对日常的软件开发工作有深刻的意义。
优酷高级技术经理 戴洵
在线试读部分章节
12.2 新兴算法
12.2.1 加密算法
加密算法其实不算是新兴算法,却是最近人们一直在讨论的内容。在MD5加密被碰撞破解之后,人们开始考虑各种各样的加密实现了。
这里给大家介绍几种常用的加密算法。
从理论上说,摘要算法也属于加密算法,MD5、SHA系列的算法都是摘要算法,是不可逆的,也就是无法解密的。
而RSA、3DES之类的可逆算法,是可以解密的。
加密算法又分为对称加密算法和非对称加密算法。对称加密算法使用同一密钥进行加解密;而非对称加密算法使用不同的密钥进行加解密。
当然,除了我们应该熟知的这些常用的加密算法,还有很多很少见的算法,比如椭圆曲线算法等。
12.2.2 商业算法
其实,近年来有很多新兴算法,因为人们在不断地探索更好的东西,去改变或者适应更好的业务。
很多算法是为了具体的产品而设计出来的。
比如图像识别算法,为了保证互联网用户上传的内容是健康的,我们需要一定的算法去识别图片中有没有不好的内容,比如用户在新浪微博、微信朋友圈上传的图片等,这靠人工审核是完全不可能做到的。
又比如推荐算法,若在淘宝上买东西,就总能看到向我们推荐的相关商品,这是如何推荐和排序的?这就是算法的作用。淘宝的商品那么多,如何能够达到秒级推荐?当然,没有一个良好的算法设计是不可能做到的。
12.3 其他算法
12.3.1 基数估计算法

 轻松学算法——互联网算法面试宝典下载



发布书评

 
 

 

PDF图书网 

PDF图书网 @ 2017