展开全部

主编推荐语

一本讲解前端程序员面试笔试真题的书籍,在写法上,除了讲解如何解答算法问题以外,还引入了示例辅以说明,让读者能够更容易理解。

内容简介

本书将程序员面试笔试过程中各类算法类真题一网打尽,在题目的广度上,通过各种渠道,搜集了近3年来典型IT企业面试笔试算法高频题目,所选择题目均为企业招聘使用题目。在题目的深度上,本书由浅入深,详细分析每一个题目,并提炼归纳。同时,引入例子与源代码、时间复杂度与空间复杂度的分析,而这些内容是其他同类书籍所没有的。本书根据真题所属知识点进行分门别类,结构合理、条理清晰,对于读者进行学习与检索意义重大。

目录

  • 版权信息
  • 前言
  • 面试笔试经验技巧篇
  • 经验技巧1 如何巧妙地回答面试官的问题
  • 经验技巧2 如何回答技术性的问题
  • 经验技巧3 如何回答非技术性问题
  • 经验技巧4 如何回答快速估算类问题
  • 经验技巧5 如何回答算法设计问题
  • 经验技巧6 如何回答系统设计题
  • 经验技巧7 如何解决求职中的时间冲突问题
  • 经验技巧8 如果面试问题曾经遇见过,是否要告知面试官
  • 经验技巧9 在被企业拒绝后是否可以再申请
  • 经验技巧10 如何应对自己不会回答的问题
  • 经验技巧11 如何应对面试官的“激将法”
  • 经验技巧12 如何处理与面试官持不同观点这个问题
  • 经验技巧13 什么是职场暗语
  • 面试笔试真题解析篇
  • 第1章 经典算法题
  • 1.1 有多少苹果用来分赃
  • 1.2 哪只猴子可以当大王
  • 1.3 移动多少盘子才能完成汉诺塔游戏
  • 1.4 如何利用约瑟夫环来保护你与你的朋友
  • 1.5 怎样才能得到阿姆斯壮数
  • 1.6 如何获取规定的排列组合
  • 1.7 如何实现洗牌算法
  • 1.8 怎样求出斐波那契数列
  • 1.9 如何实现杨辉三角
  • 1.10 牛的数量有多少
  • 1.11 百钱买百鸡
  • 1.12 经过这个路口多少次
  • 1.13 球的反弹高度有多高
  • 1.14 如何找出1000以内的“完数”
  • 1.15 猴子吃了多少桃子
  • 1.16 移动最少次数的三色旗
  • 第2章 逻辑、智力题
  • 2.1 经典逻辑题
  • 2.1.1 老鼠相遇的概率是多少
  • 2.1.2 如何计算时钟的三针重叠
  • 2.1.3 如何喝到最多瓶汽水
  • 2.1.4 住旅店花了多少钱
  • 2.1.5 如何判断哪个开关控制着哪盏灯
  • 2.1.6 如何用烧绳来计算时间
  • 2.1.7 如何用水壶获取指定的水量
  • 2.1.8 怎样才能猜出另外两个人的数
  • 2.1.9 卖鸡总共赚了多少
  • 2.1.10 跳高名次是多少
  • 2.1.11 如何根据银币猜盒子
  • 2.1.12 马牛羊的价格是多少文钱
  • 2.1.13 赔多少
  • 2.1.14 海盗如何分金才能让他获得最多的金子
  • 2.1.15 张老师的生日是哪一天
  • 2.1.16 拿几个乒乓球
  • 2.2 逻辑推理题
  • 2.2.1 怎样才能推理出学生的专业
  • 2.2.2 错误的判断是哪一个
  • 2.2.3 最后参加紧急项目的开发人是谁
  • 2.2.4 猜的第一个数字是多少
  • 2.2.5 需要多少个人测试才能判断出毒酒
  • 2.2.6 地图重合点有几个
  • 2.2.7 掰断多少次金条才能按要求给雇工报酬
  • 2.2.8 握手次数是多少
  • 2.2.9 如何判断出坏鸡蛋
  • 2.3 概率与组合
  • 2.3.1 抽球人数是多少
  • 2.3.2 案件发生在A区的可能性是多少
  • 2.3.3 男女比例将会是多少
  • 2.3.4 对称矩阵有多少个
  • 2.3.5 A、B点有多少种走法
  • 2.3.6 多少种排队方式
  • 2.3.7 把球放到小桶中有多少种放法
  • 2.3.8 正确描述100台虚拟机发生故障的是哪一个
  • 2.3.9 圆桌上一共有多少种坐法
  • 2.3.10 兵马俑博物馆可容纳多少人
  • 2.3.11 两种策略的预期收益是多少
  • 2.3.12 拾起别人帽子的概率是多少
  • 2.3.13 合法表达式有多少个
  • 2.3.14 会写Java和C++程序的有多少人
  • 2.3.15 乘坐甲车的概率是多少
  • 2.3.16 A到Z的最短路径数是多少
  • 2.3.17 选取红黄白球的概率是多少
  • 2.3.18 一共有多少种染色情况
  • 2.3.19 肇事车是白车的概率是多少
  • 2.3.20 获得冠军的情况有多少种
  • 2.3.21 一红一黑的概率是多少
  • 2.3.22 谁会赢
  • 2.3.23 描述正确的是哪一项
  • 2.4 数学计算
  • 2.4.1 一共等了女神多少分钟
  • 2.4.2 使用了什么进制运算
  • 2.4.3 三角形有多少个
  • 2.4.4 数列的规律是什么
  • 2.4.5 数列使用了什么规律
  • 2.4.6 余数是多少
  • 2.4.7 如何才能找到最好的羽毛球员工
  • 2.4.8 亮着的灯泡有多少个
  • 2.4.9 工作时长是多少
  • 2.4.10 最小夹角是多少度
  • 2.4.11 求解到的余数是多少
  • 2.4.12 如何正确计算余数
  • 2.4.13 最高效的矩形是哪个
  • 2.4.14 可以实现的函数是哪个
  • 2.4.15 可以兑换多少瓶加多宝
  • 2.4.16 共赚多少钱
  • 2.4.17 实际折扣是多少
  • 第3章 排序算法
  • 3.1 如何实现冒泡排序
  • 3.2 什么是插入排序
  • 3.3 归并排序的原理是什么
  • 3.4 快速排序使用了什么思想
  • 3.5 选择排序的实现过程是怎样的
  • 3.6 什么叫希尔排序
  • 3.7 如何实现堆排序
  • 3.8 计数排序的原理是什么
  • 3.9 怎样用JavaScript代码实现桶排序
  • 第4章 链表
  • 4.1 如何实现链表的逆序
  • 4.2 如何从无序链表中移除重复项
  • 4.3 如何计算两个单链表所代表的数之和
  • 4.4 如何对链表进行重新排序
  • 4.5 如何找出单链表中的倒数第k个元素
  • 4.6 如何检测一个较大的单链表是否有环
  • 4.7 如何把链表相邻元素翻转
  • 4.8 如何把链表以k个结点为一组进行翻转
  • 4.9 如何合并两个有序链表
  • 第5章 栈与队列
  • 5.1 如何实现栈
  • 5.2 如何实现队列
  • 5.3 如何翻转栈的所有元素
  • 5.4 如何根据入栈序列判断可能的出栈序列
  • 5.5 如何用O(1)的时间复杂度求栈中最小元素
  • 5.6 如何用两个栈模拟队列操作
  • 第6章 二叉树
  • 6.1 二叉树基础知识
  • 6.2 如何实现二叉树
  • 6.3 如何把一个有序的整数数组放到二叉树中
  • 6.4 如何用二叉树实现多层级分类
  • 6.5 如何找到二叉树中的最大最小值
  • 6.6 如何对二叉树进行遍历
  • 6.7 如何判断一棵二叉树是否是二叉树
  • 第7章 数组
  • 7.1 如何找出数组中唯一的重复元素
  • 7.2 如何查找数组中元素的最大值和最小值
  • 7.3 如何找出旋转数组的最小元素
  • 7.4 如何找出数组中丢失的数
  • 7.5 如何找出数组中出现奇数次的数
  • 7.6 如何找出数组中第k小的数
  • 7.7 如何求数组中两个元素的最小距离
  • 7.8 如何求解最小三元组距离
  • 7.9如何求数组连续最大和
  • 7.10 如何求数组中绝对值最小的数
  • 7.11 如何找出数组中出现一次的数
  • 7.12 如何在不排序的情况下求数组的中位数
  • 7.13 如何求集合的所有子集
  • 7.14 如何对数组进行循环移位
  • 7.15 如何在有规律的二维数组中进行高效的数据查找
  • 7.16 如何寻找最多的覆盖点
  • 7.17 如何判断请求能否在给定的存储条件下完成
  • 7.18 如何按要求构造新的数组
  • 7.19 如何获取最好的矩阵链相乘方法
  • 7.20 如何求解迷宫问题
  • 7.21 如何从三个有序数组中找出它们的公共元素
  • 第8章 基本数字运算
  • 8.1 如何判断一个自然数是否是某个数的二次方
  • 8.2 如何判断一个数是否为2的n次方
  • 8.3 如何不使用除法操作符实现两个正整数的除法
  • 8.4 如何只使用递增运算符(++)实现加减乘除运算
  • 8.5 如何根据已知随机数生成函数计算新的随机数
  • 8.6 如何判断1024!末尾有多少个0
  • 8.7 如何按要求比较两个数的大小
  • 8.8 如何求有序数列的第1500个数的值
  • 8.9 如何求二进制数中1的个数
  • 8.10 如何计算一个数的n次方
  • 8.11 如何在不能使用库函数的条件下计算正数n的算术平方根
  • 8.12 如何不使用“^”符号实现异或运算
  • 8.13 如何不使用循环输出1~100
  • 第9章 排列组合与概率
  • 9.1 如何拿到最多金币
  • 9.2 如何求正整数n所有可能的整数组合
  • 9.3 如何用一个随机函数得到另外一个随机函数
  • 9.4 如何等概率地从大小为n的数组中选取m个整数
  • 9.5 如何计算1、2、5这三个数使其和为100的组合个数
  • 9.6 如何判断有几盏灯泡还亮着
  • 第10章 海量数据处理
  • 10.1 如何从大量的url中找出相同的url
  • 10.2 如何从大量数据中找出高频词
  • 10.3 如何找出某一天访问百度网站最多的IP
  • 10.4 如何在大量的数据中找出不重复的整数
  • 10.5 如何在大量的数据中判断一个数是否存在
  • 10.6 如何查询最热门的查询串
  • 10.7 如何统计不同电话号码的个数
  • 10.8 如何从5亿个数中找出中位数
  • 10.9 如何按照query的频度排序
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

机械工业出版社

机械工业出版社是全国优秀出版社,自1952年成立以来,坚持为科技、为教育服务,以向行业、向学校提供优质、权威的精神产品为宗旨,以“服务社会和人民群众需求,传播社会主义先进文化”为己任,产业结构不断完善,已由传统的图书出版向着图书、期刊、电子出版物、音像制品、电子商务一体化延伸,现已发展为多领域、多学科的大型综合性出版社,涉及机械、电工电子、汽车、计算机、经济管理、建筑、ELT、科普以及教材、教辅等领域。