百度基础架构组-实习生面试(2016.08 java后台开发)
一、项目
1、Spring MVC与Struts2的区别:
2、MVC三层是如何工作的?比如:要访问一个Url?a=xx&b=xx,怎么找到相应的资源,怎么运算,怎么返回等?
3、数据库mybatis,如何优化的?加索引。
二、计算机网络
1、Http协议中GET与POST的区别
a) GET请求的数据会附在URL之后(就是把数据放置在HTTP协议头中),以?分割URL和传输数据,参数之间以&相连。POST把提交的数据则放置在是HTTP包的包体中。
b) GET传递的数据长度有限制,POST方式在理论上是没有大小限制的,可以传输大量数据。
c) POST的安全性要比GET的安全性高。因为GET方式传输的数据以明文的形式出现在URL中。
2、Http协议的状态
(200 – 服务器成功返回网页 404 – 请求的网页不存在 503 – 服务不可用 )
a) 2xx(成功),表示成功处理了请求。
b) 3xx(重定向),表示要完成请求,需要进一步操作。 通常,这些状态代码用来重定向。
301 (永久移动) 请求的网页已永久移动到新位置。 服务器返回此响应(对 GET 或 HEAD 请求的响应)时,会自动将请求者转到新位置。 302 (临时移动) 服务器目前从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求。305 (使用代理) 请求者只能使用代理访问请求的网页。 如果服务器返回此响应,还表示请求者应使用代理。
d) 4xx(请求错误),这些状态代码表示请求可能出错,妨碍了服务器的处理。
401 (未授权) 请求要求身份验证。 对于需要登录的网页,服务器可能返回此响应。403 (禁止) 服务器拒绝请求。404 (未找到) 服务器找不到请求的网页。
e) 5xx(服务器错误),这些状态代码表示服务器在尝试处理请求时发生内部错误。 这些错误可能是服务器本身的错误。
三、Git与SVN的区别,Git pull、fetch、rebase、reset的区别
1) Git是分布式的,SVN不是。即每个开发人员从中心版本库上\服务器上check out代码后会在自己的机器上克隆一个自己的版本库。
这样,如果你被困在一个不能连接网络的地方,仍然可以提交文件,查找历史版本记录,创建分支。
2) Git分支和SVN的分支不同。Git是基于差异来管理分支的,其分支的代价极小,切换分支也极为方便和快捷。
3) git pull 相当于是从远程获取最新版本并merge到本地;git fetch 相当于是从远程获取最新版本到本地,不会自动merge;实际上使用git fetch更安全一些。
因为在merge前,我们可以查看更新情况,然后再决定是否合并。
4) git rebase?
5) git reset?
四、数据结构
HashMap内部是怎么实现的?拉链式结构
TreeMap 红黑树
五、算法
1、如何判断一个单链表中是否存在环(两个指针,一快一慢)
2、求Fibonacci数列的最快算法,最少时间复杂度是多少?
a) 迭代算法,O(N),需要借助O(N)的空间,最简单。
b) 递归,O(2^N),空间复杂度O(1),时间复杂度太高。
c) 矩阵乘法,最快,时间复杂度O(logN),但是计算比较复杂,不深入讨论。
3、求1-9999这9999个数字中含有多少个1? 分类,排列组合
4、都知道哪些排序算法(具体怎么实现)?手写堆排序算法,冒泡排序算法。
5、数组大小为N,元素取值范围为[1,N],统计每个元素出现的次数。
要求时间复杂度为O(N), 空间复杂度为O(1),可以改变数组元素。
六、Java基础
1、GC垃圾回收机制原理
2、== 与 equals区别
3、final关键字
4、short s1=1;s1 = s1+1;
七、操作系统
linux常用命令
八、前端
正则表达式、js、css块、html、bootstrap
九、IPC(中间件)
例如:spring mvc等,是将HTTP协议......
十、数据挖掘
聚类算法:如何优化?
百度基础架构组-实习生面试(2016.08 java后台开发)的更多相关文章
- 2022年字节跳动基础架构前端实习生凉经(4轮技术面+hr面)
技术一面 原文链接:https://juejin.cn/post/7120516854203809829 因为我之前的项目经验有开发小程序的,所以一开始就问了小程序的问题 1.小程序onload和on ...
- 2016年Java服务器端开发面试总结
因为一些个人原因,陆陆续续参加了一些校招补招.社招的笔试和面试(BAT),也包括一些国外公司(Spotify, Google, Ericsson),最后有幸被网易收入麾下,拿到了S.下面罗列一些我复习 ...
- 维恩贝特面试JAVA后台开发
1 自我介绍 2 链表和数组区别(数组空间连续,且有下标,查找快,但是增删数据效率不高,链表的空间不连续,查找起来慢,但是对数据的增删效率高,链表可以随意扩大,数组不能) 3 sort方法的实现 (A ...
- 零基础,三个月内,找到??? java后端开发工作
一.分析你的问题 出于尊重,先分析一下你的原问题吧,从您的问题,我提取到关键信息:"零基础"."三个月内"."找到工作",最后一个关键词&q ...
- 腾讯电话面试总结(IEG后台开发)
1 Java面向对象:设计window画板的类框架.假设现在只有 直线.矩形.椭圆,怎么设计 2 Linux shell命令 定时怎么做 3 平时有问题经常访问那些网站 4 假设你现在是web网站 ...
- Java后台工程师面试杂记——不跳不涨工资星人跳槽经历
经过接近一个月的时间,完成换工作这件“小事”,前后总计面试了多家公司,最后也没接到几个offer,不过最终总算尘埃落定,就对这个过程进行一个总结吧. 在某互联网公司工作了近一年的时间,但是频繁的业务需 ...
- 深入浅出node.js游戏服务器开发1——基础架构与框架介绍
2013年04月19日 14:09:37 MJiao 阅读数:4614 深入浅出node.js游戏服务器开发1——基础架构与框架介绍 游戏服务器概述 没开发过游戏的人会觉得游戏服务器是很神秘的 ...
- Java后台面试 常见问题
Java后台面试 常见问题 从三月份找实习到现在,面了一些公司,挂了不少,但最终还是拿到小米.百度.阿里.京东.新浪.CVTE.乐视家的研发岗offer.我找的是java后台开发,把常见的问题分享 ...
- [原创]大连sap vt 实习生面试经历
从决定参加这次面试开始,求职生涯就算是开始了,虽然失败了,但也是亲身体会到了面试的感觉,这次经历也作为第一篇博客. 大连sap的职能是sap的全球技术支持中心和解决方案提供中心.VT项目提供的岗位是技 ...
随机推荐
- c# 进阶之 WebAPI
REST是设计风格而不是标准. webapi有自己的路由. webservice和wcf的协议都是soap协议,数据的序列化和反序列化都是soap的格式.而webapi是Json的数据传递 webap ...
- 集合04_Set
Set集合总览 集合元素无序.不重复,三个实现类都是线程不安全的,最好在创建时通过Collections工具类的synchronizedSortedSet方法来包装Set集合,防止对set集合的意外非 ...
- Asp.net MVC 控制器ActionResult的例子
ActionResult 父类型 ViewResult View() 多重载应用 PartialViewResult PartialView() 部分试图 New EmptyResult() 空 如 ...
- P3455 [POI2007]ZAP-Queries(莫比乌斯反演)
思路 和YY的GCD类似但是更加简单了 类似的推一波公式即可 \[ F(n)=\sum_{n|d}f(d) \] \[ f(n)=\sum_{n|d}\mu(\frac{d}{n})F(d) \] \ ...
- echarts获取数据的一些难点1
像上面获取数据后,如果再根据下方按钮查询不同获取的价格,虽然曲线价格能按照不同的来展示, 但是问题有: 查询到的company字段虽然在获取的data中能测试出,但是在上方填入这些companys后, ...
- java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina]
本文为博主原创,未经允许不得转载: 被坑了好长时间的bug,差点就要重新配置环境,重新下载,重新开始的境遇.在此记录一下: 首先展示一下报错的异常: -Apr- ::] org.apache.cata ...
- 【译】第17节---数据注解-Column
原文:http://www.entityframeworktutorial.net/code-first/column-dataannotations-attribute-in-code-first. ...
- python-ConfigParser模块【读写配置文件】
对python 读写配置文件的具体方案的介绍 1,函数介绍 import configParser 如果Configparser无效将导入的configParser 的C小写 1.1.读取配置文件 - ...
- 《深入理解JVM虚拟机》读书笔记
前言:<深入理解JVM虚拟机>是JAVA的经典著作之一,因为内容更偏向底层,所以之前一直没有好好的阅读过.最近因为刚好有空,又有了新目标.所以打算和<构架师的12项修炼>一起看 ...
- 力扣(LeetCode) 66. 加一
给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一. 最高位数字存放在数组的首位, 数组中每个元素只存储一个数字. 你可以假设除了整数 0 之外,这个整数不会以零开头. 示例 1: 输入 ...