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.多线程的几种实现

  1. 使用Thread和Runnable实现多线程。
  2. 使用线程池,例如:ThreadPoolExecutor。
  3. 线程间的交互: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
还有个问题没有处理!
 */
}

输出结果:

5
  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;
 }
}

  前两道还是挺简单的,第三到题没有记住。。。。。。

时间: 2025-01-06 07:33:20

2016京东Android研发校招笔试题的相关文章

兆易创新2016年9月校招笔试题_IC设计/验证

还有器件岗位的笔试题: 1.CMOS中哪些制造步骤中用到了离子注入,需要注意哪些?2.有哪些薄膜制备方法?各有什么优缺点?3.COMS的制作步骤,简要叙述.4.载流子的输运方式有哪些,简要叙述.5.半导体中缺陷种类,杂质的类型,缺陷杂质的危害,如何避免杂质缺陷.6.为何固体有超导体,导体,半导体,绝缘体?7.缓变PN结和突变PN结区别,如何制作,有何应用?8.CMOS的IV特性曲线,各个阶段的意义,如何让器件有效工作?9.质量测试中的加速失效作用.10.氧化层的击穿过程,如何避免击穿?附加题:N

网易2018校招笔试题-数组能不能满足重排列后任意相邻的元素积都是4的倍数

今天看了一下网易最新的校招笔试题: 小易有一个长度为N的正整数数列A = {A[1], A[2], A[3]..., A[N]}.牛博士给小易出了一个难题:     对数列A进行重新排列,使数列A满足所有的A[i] * A[i + 1](1 ≤ i ≤ N - 1)都是4的倍数.     小易现在需要判断一个数列是否可以重排之后满足牛博士的要求. 代码如下: 1 import java.util.Scanner; 2 3 /** 4 * Created by jy on 2017/9/9. 5

2015年阿里巴巴校招笔试题

校招找工作的同学,可以看看,非常有帮助! 推荐: http://gointernetgo.com/textinterview/bishi-2015-alibba [产品经理]阿里巴巴2015校园招聘笔试题 [研发工程师]阿里巴巴2015校园招聘笔试题 [研发工程师]阿里巴巴2015校园招聘笔试题2 [国际安全运营专员]阿里巴巴2015校园招聘笔试题1 [产品运营]阿里巴巴2015校园招聘笔试题1 [前端开发工程师]阿里巴巴2015校园招聘笔试题1 [前端开发工程师]阿里巴巴2015校园招聘笔试题

阿里2016校招研发类笔试题php

一. 选择题 40分钟: 1.某操作系统采用分页存储管理方式,下图给出了进程A和进程B的页表结构.如果物理页的大小为512字节,那么进程A与进程B的物理内存总共使用了__字节. 进程A页表: 进程B页表: 逻辑页 物理页 逻辑页 物理页 0 9 0 1 1 2 1 3 2 4 2 4 3 6 3 7 4 4 2 5 5 4608 3584 4096 5120 2560 2048 2.以下函数中,和其他函数不属于一类的是__. fwrite putc pwrite putchar getline

美团2016研发工程师笔试题(绑鞋带问题)

由A地到B地,中间有一段扶梯,总路程和扶梯长度是固定的,为赶时间全程都在行走(包含扶梯上),中途发现鞋带松了,需要停下来绑鞋带.请问在扶梯上绑鞋带和在路上绑鞋带两种方式比较(  ) 路上绑鞋带,全程用时短 扶梯上绑鞋带,全程用时短 用时一样 和扶梯长度,绑鞋带具体用时有关 答案是(2) 解答步骤:

2015百度校招用户行为分析研发工程师笔试题

一,简答题(本题共30分) 1. 当前计算机系统一般会采用层次结构来存储数据,请介绍下典型的计算机存储系统一般分为哪几个层次,为什么采用分层存储数据能有效提高程序的执行效率?(10分) 所谓存储系统的层次结构,就是把各种不同存储容量.存取速度和价格的存储器按层次结构组成多层存储器,并通过管理软件和辅助硬件有机组合成统一的整体,使所 存放的程序和数据按层次分布在各种存储器中.目前,在计算机系统中通常采用三级层次结构来构成存储系统,主要由高速缓冲存储器Cache.主存储器和辅助 存储器组成.    

滴滴出行2016研发工程师笔试题(亮灯问题)

2015盏灯,一开始全部熄灭,序号分别是1-2015,先把1的倍数序号的灯的开关全部按一次,然后把2的倍数的灯的开关全部按一次,然后把3的倍数的开关按一次,以此类推,最后把2015的倍数灯的开关按一次.问最后亮着的灯有多少盏? 43 44 45 46 问题分析: 初始:全是灭的 1:全部亮 2:1,3,5 ,7,9,11,13... 3:1亮,6亮,12亮. 4:1,4,6,8...亮 ---------------------------------- 可以发现1是一直亮着的后面的倍数都是比1

阿里巴巴2016研发工程师笔试题

本题实则考察进制转换,可以设为x进制,但是x进制有一个问题,即我们无法对x进制直接进行加减乘除,故转化为我们常见的10进制. 78=7*x+8,123=1*x2+2*x+3:然后解方程即可.答案为13进制. 本题考察的是装箱与拆箱,==比较的是值,同样equals也是比较值.故选择true,true. equals源码如下: public boolean equals(Object obj) { if (obj instanceof Integer) { return value == ((In

搜狗2016研发工程师笔试题中有关于机器学习的几个判断题及解析

1.SVM对噪声(如来自其他分布的噪声样本)鲁棒       错 SVM(支持向量机)本身对噪声具有一定的鲁棒性,但实验证明,是当噪声率低于一定水平(如40%)时噪声对SVM没有太大影响,算法仍有效,但随着噪声率的不断增加,分类器的识别率会降低.http://www.docin.com/p-749158537.html 拓展:SVM在解决小样本.非线性及高维模式识别中表现出许多特有的优势,并能够推广应用到函数拟合等其他机器学习问题中. 在机器学习中,支持向量机(Support Vector Ma