2016京东Android研发校招笔试题
一、选择题汇总,具体的记不住啦。。
1.计网:ip的网络前缀、SNMP(报文组成):http://blog.csdn.net/shanzhizi/article/details/11606767 参考这个博客
TCP协议
2.数据库连接查询、全文索引:select * from product where match(detail) fulltext('jyc')
3.PAD图、N-S图
4.hash映射、
5.CSS中透明的部分
6.DMA、中断
7.线性窥孔
8.编译原理的表达式
9.android:接受广播需要权限
BroadcastReceiver能绑定service??
前台进程包括PnReceive函数(BroadcastReceiver)么??
10.数据结构的前序中序遍历
11.计数排序算法
12.基数排序、shell排序、桶排序是基于比较的么??
上边的题还是很简单的,很基础。。。。
-----------------------------------------------------
二、大题:
1.多个Activity的退出:
可以参考这个博客:http://www.cnblogs.com/jycboy/p/5891965.html#autoid-1-0-0
2.ForceClose和ANR
http://www.cnblogs.com/jycboy/p/5754396.html 和 http://www.cnblogs.com/jycboy/p/5891992.html
3.单例模式(这里有好几种实现,注意多线程的情况)
http://www.cnblogs.com/jycboy/p/5892185.html 参考这个
4.点9图特点(感觉这个题考的很偏,关键是跟编程没有关系。。。。)
5.多线程的几种实现
- 使用Thread和Runnable实现多线程。
- 使用线程池,例如:ThreadPoolExecutor。
- 线程间的交互:Handler、Lock锁机制、阻塞队列等。
三、编程题
1.题目描述:
战争游戏的至关重要环节就要到来了,这次的结果将决定王国的生死存亡,小B负责首都的防卫工作。首都处于一个四面环山的盆地中,周围的n个小山构成一个环,作为预警措施,
小B计划在每个小山上设置一个观察哨,日夜不停的瞭望周围发生的情况。
一旦发生外敌入侵事件,山顶上的岗哨将点燃烽烟。若两个岗哨所在的山峰之间没有更高的山峰遮挡且两者之间有相连通路,则岗哨可以观察到另一个山峰上的烽烟是否点燃。
由于小山处于环上,任意两个小山之间存在两个不同的连接通路。满足上述不遮挡的条件下,一座山峰上岗哨点燃的烽烟至少可以通过一条通路被另一端观察到。
对于任意相邻的岗哨,一端的岗哨一定可以发现一端点燃的烽烟。小B设计的这种保卫方案的一个重要特性是能够观测到对方烽烟的岗哨对的数量,她希望你能够帮她解决这个问题。
输入
输入中有多组测试数据。每组测试数据的第一行为一个整数n(3<=n <=10^6),为首都周围的小山数量,第二行为n个整数,依次表示小山的高度h,(1<=h<=10^9)。
输出
对每组测试数据,在单独的一行中输出能相互观察到的岗哨的对数。
样例输入
5
1 2 4 5 3
样例输出
7
代码:
- package sample2;
- import java.util.HashMap;
- import java.util.Iterator;
- import java.util.Scanner;
- public class Main {
- public static void main(String[] args) {
- // TODO Auto-generated method stub
- Scanner in = new Scanner(System.in);
- int n; int[] a= null;
- while(in.hasNextLine()){
- n = in.nextInt(); in.nextLine();
- a = new int[n];
- for(int i=0;i < n;i++){
- a[i] = in.nextInt();
- }
- search(a);
- }
- }
- static void search(int[] a){
- int n = a.length;
- int i,sum=0,max;
- HashMap<Integer,Integer> map = new HashMap<>();
- for(i =0;i<n;i++){
- if(a[i]>=a[(i-1+n)%n]){ //没有挡住
- max = a[(i-1+n)%n];
- for(int j=(i-2+n)%n;j!=(i+1+n)%n ; j = (j-1+n)%n){
- if(a[j] >= max){
- max = a[j];
- if(map.containsKey(i)){
- int num = map.get(i);
- num++;
- map.put(i, num);
- }else{
- map.put(i, 1);
- }
- if(max>a[i]) break;
- }
- }
- }
- if(a[i]>=a[(i+1+n)%n]){
- max = a[(i+1+n)%n];
- for(int j = (i+2+n)%n;j!=(i-1+n)%n;j = (j+1+n)%n){
- if(a[j]>=max){
- //if(j == 1&& i == 4)System.out.print("..j=1..");
- max = a[j];
- if(map.containsKey(i)){
- int num = map.get(i);
- num++;
- map.put(i, num);
- }else{
- map.put(i, 1);
- }
- if(max>a[i]) break;
- }
- }
- }
- }
- for(Iterator iter = map.keySet().iterator();iter.hasNext();){
- int ii = (int) iter.next();
- sum +=map.get(ii);
- //System.out.println("key:"+ii+" val:"+map.get(ii));
- }
- sum /=2;
- sum += n;
- System.out.println(sum);
- }
- /**
- * 5
- 1 2 4 5 3
- key:1 value:4 key:2 value:4 key:4 value:2 8
- 还有个问题没有处理!
- */
- }
输出结果:
1 2 4 5 3
7
2.题的大致意思是:
*输入一个整数n,
* 计算从2到n-1进制的所有位数的和
* 例如:
* 输入的5
* 对应的进制:
* 2进制:101
* 3进制:12
* 4进制:11
* 输出的和:1+0+1+1+2+1+1= 7
* 所以输入:5 输出:7
代码:
- package sample2;
- import java.util.Scanner;
- /**
- * @author 超超boy
- *
- */
- public class Main2 {
- public static void main(String[] args) {
- // TODO Auto-generated method stub
- Scanner sc = new Scanner(System.in);
- int n,sum;
- while(sc.hasNextLine()){
- n = sc.nextInt();//A
- sc.nextLine();
- sum = jisuan(n);
- int m = n-1-2+1;
- System.out.println(sum+"/"+m);
- }
- }
- static int jisuan(int n){ //A
- int h,sum;
- h = n;
- sum = 0;
- for(int i=2;i<=n-1;i++){
- while(h>0){
- sum = h%i+sum;
- h =h/i;
- }
- h = n;
- }
- return sum;
- }
- }
前两道还是挺简单的,第三到题没有记住。。。。。。
2016京东Android研发校招笔试题的更多相关文章
- 剑指Offer——京东校招笔试题+知识点总结
剑指Offer--京东校招笔试题+知识点总结 笔试感言 经过一系列的笔试,发觉自己的基础知识还是比较薄弱的,尤其是数据结构和网络,还有操作系统.工作量还是很大的.做到精确制导的好方法就是在网上刷题,包 ...
- 剑指Offer——美团内推+校招笔试题+知识点总结
剑指Offer--美团内推+校招笔试题+知识点总结 前言 美团9.9内推笔试.9.11校招笔试,反正就是各种虐,笔试内容如下: 知识点:图的遍历(DFS.BFS).进程间通信.二叉查找树节点的删除及中 ...
- 剑指Offer——CVTE校招笔试题+知识点总结(Java岗)
剑指Offer(Java岗)--CVTE校招笔试题+知识点总结 2016.9.3 19:00参加CVTE笔试,笔试内容如下: 需要掌握的知识:Linux基本命令.网络协议.数据库.数据结构. 选择题 ...
- 剑指Offer——腾讯+360+搜狗校招笔试题+知识点总结
剑指Offer--腾讯+360+搜狗校招笔试题+知识点总结 9.11晚7:00,腾讯笔试.选择题与编程.设计题单独计时. 栈是不是顺序存储的线性结构啊? 首先弄明白两个概念:存储结构和逻辑结构. 数据 ...
- 阿里巴巴集团2016校园招聘-Python工程师笔试题(附加题+部分答案)
前言 第一次网上笔试,被虐的很惨.一是不太习惯,最主要的是还是自己对Python的掌握,还不够熟练.下面是这次阿里笔试相关信息 笔试时间是,2015年8月23日,10:00——12:00 对于笔试题, ...
- 2016届百度实习生前端笔试题上海卷a
1.写出javascript运行结果:alert(‘5’+5); 结果:alert()函数中不能进行算术运算或字符串拼接,故不会弹出对话框. 2.写出javascript运行结果:for(var ...
- hiho #1288 微软2016.4校招笔试题 Font Size
#1288 : Font Size 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 Steven loves reading book on his phone. The ...
- [转]Hulu 2013北京地区校招笔试题
填空题: 1.中序遍历二叉树,结果为ABCDEFGH,后序遍历结果为ABEDCHGF,逆序遍历结果为? 2.对字符串HELL0_HULU中的字符进行二进制编码,使得字符串的编码长度尽可能短,最短长度为 ...
- 网易校招C++研发工程师笔试题
选择题: mysql主从复制,server_id问题 mysql key_len 找以.conf为结尾的文件 问答题: 实现一个超大整数的类 并实现加减法功能 用string实现大数加减法(博客里以前 ...
随机推荐
- SQL分页查询,纯Top方式和row_number()解析函数的使用及区别
听同事分享几种数据库的分页查询,自己感觉,还是需要整理一下MS SqlSever的分页查询的. Sql Sever 2005之前版本: select top 页大小 * from 表名 where i ...
- ASP.Net 获取服务器信息
1: Response.Write("服务器机器名:" + Server.MachineName); 2: Response.Write("<br/>&quo ...
- 关于MVC中模型model的验证问题
今天在做项目练习的时候发现,MVC中使用自带的模型验证时会提前显示在界面上,比如下面所示: 这是什么原因了,是因为我在表示get请求的action里面返回了其界面所显示使用的model,我们知道mvc ...
- final .....finally ...... 和Finalize ......区别
一.性质不同 ()final为关键字: ()finalize()为方法: ()finally为为区块标志,用于try语句中: 二.作用 ()final为用于标识常量的关键字,final标识的关键字存储 ...
- eclipse设置及快捷键
快捷键 查看所有快捷键: Ctrl+Shift+L 调试代码: F11 逐语句: F5 逐过程: F6 快速执行代码: Ctrl+F11 自动格式化代码: Ctrl+Shift+F 在本行代码下插入新 ...
- 基于MVC4+EasyUI的Web开发框架经验总结(15)--在MVC项目中使用RDLC报表
RDLC是一个不错的报表,有着比较不错的设计模式和展现效果,在我的Winform开发里面,使用RDLC也是一个比较方便操作,如可以参考文章<DevExpress的XtraReport和微软RDL ...
- .NET Framework介绍
.NET Framework 是一个集成在 Windows 中的组件,它支持生成和运行下一代应用程序与 XML Web Services. .NET Framework 旨在实现下列目标: 提供一个一 ...
- C#自定义特性实例
元数据,就是C#中封装的一些类,无法修改.类成员的特性被称为元数据中的注释. 1.什么是特性 (1)属性与特性的区别 属性(Property):属性是面向对象思想里所说的封装在类里面的数据字段, ...
- LeetCode3:Longest Substring Without Repeating Characters
题目: Given a string, find the length of the longest substring without repeating characters. For examp ...
- MySQL Workbench gnome-keyring-daemon错误的解决
在Fedora下安装了一个MySQL Workbench,运行,连接数据库,在Store in Keychain时出现了gnome-keyring-daemon错误,不能保存密码,也就连不上数据库. ...