`
抛出异常的爱
  • 浏览: 630471 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

精通XX面试手册收集贴

阅读更多
本贴所有回贴必须含有一道面试题
否则会投反对票.
引用其它贴子的
要给出出处地址.
分享到:
评论
40 楼 waldenlake 2008-03-07  
bcccs 写道
waldenlake 写道
如果非要求和的话 是要遍历整个数组的 然后才能取最末几位。(位运算不熟:p)
折半的话就不需遍历整个数组


问题是对于无序数组,怎么二分?难道你先排序?

呵呵 同问 只能假设他排好了。
39 楼 bcccs 2008-03-07  
waldenlake 写道
如果非要求和的话 是要遍历整个数组的 然后才能取最末几位。(位运算不熟:p)
折半的话就不需遍历整个数组


问题是对于无序数组,怎么二分?难道你先排序?
38 楼 liquidthinker 2008-03-07  
7thbyte 写道
用最快速的方式取出形如
"abcd(efg)hi(jk)lmn(opp)q"
字符串中每个括号里的字串,用逗号分隔

如果说编码最快速的话,一行代码搞定,价格便宜量又足,如果说性能还没有测试过
String s="abcd(efg)hi(jk)lmn(opp)q".replaceAll("\\(|\\)", ",");
37 楼 waldenlake 2008-03-07  
如果非要求和的话 是要遍历整个数组的 然后才能取最末几位。(位运算不熟:p)
折半的话就不需遍历整个数组
36 楼 bcccs 2008-03-07  
waldenlake 写道
和相减的时间复杂度是O(n) 二分的asl(基本上也能看成时间复杂度)是log2(n+1)-1(2是下标),
n较大时二分比求和减快

n大的时候,虽然会和溢出,你不会保留最末几位么?换成位运算,怎么会慢?
35 楼 waldenlake 2008-03-07  
和相减的时间复杂度是O(n) 二分的asl(基本上也能看成时间复杂度)是log2(n+1)-1(2是下标),
n较大时二分比求和减快
34 楼 lingzantia 2008-03-07  
a_lion 写道
卒子99 写道
黑暗浪子 写道
1到50共有五十个数字,随即去掉一个数字,剩下49个放在一个数据集合中(可能是数组,可能是list,更有可能是set)
写一段代码,把那个去掉的数字找出来。
要求:效率最高,查找速度最快。
上海sungard公司出的

这个些数字放到集合中有什么要求?如果是有序放到集合中,我会使用折半查找的思想来做,必如先找到index = 24的数字,判断是小于25,还是等于25。
如果小于25则在前25个数字中,等于25则在后25个数字中找


如果是无序放上的,也不知道有什么好方法了,先排一次序?还是依次比较

呵呵,还请指教正确解答


对新数据集合里的元素求和,然后用原来的和减去这个数就得到结果了。


事实上,还是二分法比较快,请看我的实验代码,大家有兴趣的话可以跑跑看.
public static void main(String[] args) {		 
		 int[] all = new int[10000];
		 int[] sub = new int[9999];
		 
		 for(int i=0,j=0; i<10000; i++){
			 all[i] = i+1;
			 if(i != 30){
				 sub[j] = i+1;
				 j++;
			 }
		 }
		 
		 Date begin_1 = new Date();
		 int sum_all = 0;
		 int sum_sub = 0;
		 for(int i=0; i<sub.length; i++){
			 sum_all += all[i];
			 sum_sub += sub[i];
		 }
		 sum_all += all[all.length-1];
		 System.out.println("number is: " + (sum_all-sum_sub) + " all time is: " + (new Date().getTime()-begin_1.getTime()));
		 
		 Date begin_2 = new Date();
		 int number = 0;
		 int a_all = 0;
		 int a_sub = 0;
		 int low = 0;
		 int high = sub.length-1;
		 for(int i=sub.length/2;;){
			 if(sub[i] == all[i]){
				 low = i;
				 i = (i + high)/2;
				 if((high-low) <= 1){
					 number = all[i+1];
					 break;
				 }
			 }else{
				 high = i;
				 i = (i + low)/2;
				 if((high-low) <= 1){
					 number = all[i+1];
					 break;
				 }
			 }
		 }
		 System.out.println("number is: " + number + " all time is: " + (new Date().getTime()-begin_2.getTime()));
	}
33 楼 NicholasBugs 2008-03-07  
xyz20003 写道
抢我们饭碗哦.T_T.

写错了,下边的是笔试题,补一个面试的:
请简述MVC的组成部分。

public class Test {
    public static StringBuffer doSomething(StringBuffer buff) {
        buff = new StringBuffer();
        buff.append("Hello World");
        return buff;
    }

    public static void main(String[] args) {
        StringBuffer buff = new StringBuffer();
        buff.append("Hello");
        doSomething(buff);
        System.out.println(buff);
    }
}


请问上面的程序输入的结果是:
A:Hello World B:空字符串 C:Hello D:运行出错。

C
32 楼 NicholasBugs 2008-03-07  
1,抽象类和接口的区别
2,equals()和hashcode()方法的关系,如果修改了一个类的equals()方法,它的hashcode()方法是否一定要修改?
31 楼 lgn21st 2008-03-07  
把Baidu的Logo换成Google的!
30 楼 blog4Leon 2008-03-07  
7thbyte 写道
用最快速的方式取出形如
"abcd(efg)hi(jk)lmn(opp)q"
字符串中每个括号里的字串,用逗号分隔


堆栈
逆序扫描字符串
遇到')' 开始压栈,先压一个逗号;直到遇到'(' ,压栈停止,出栈并打印
29 楼 programming 2008-03-07  
javascript中的面向对象
28 楼 chengren 2008-03-07  
问2个比较简单的问题吧。。。
1.常用的数据库锁机制有几种,分别优缺点是什么。
2.对java同步机制怎么理解的。

俺们是业务系统要求比较低,hoho
27 楼 ssuupv 2008-03-07  
你在项目碰到spring多数据源各种情况,及解决方案
26 楼 锁上门睡觉 2008-03-07  
hibernate 和 Spring jdbctemplate 做比较一下
25 楼 dearwolf 2008-03-07  
我生从何来死往何处,我为什么会出现在这个世界上,我的出现对这个世界来说意味着什么……
24 楼 卒子99 2008-03-07  
a_lion 写道
卒子99 写道
黑暗浪子 写道
1到50共有五十个数字,随即去掉一个数字,剩下49个放在一个数据集合中(可能是数组,可能是list,更有可能是set)
写一段代码,把那个去掉的数字找出来。
要求:效率最高,查找速度最快。
上海sungard公司出的

这个些数字放到集合中有什么要求?如果是有序放到集合中,我会使用折半查找的思想来做,必如先找到index = 24的数字,判断是小于25,还是等于25。
如果小于25则在前25个数字中,等于25则在后25个数字中找


如果是无序放上的,也不知道有什么好方法了,先排一次序?还是依次比较

呵呵,还请指教正确解答


对新数据集合里的元素求和,然后用原来的和减去这个数就得到结果了。



呵呵,昨天晚上走的时候想到上面的方法的
23 楼 wolfbrood 2008-03-07  
<div class='quote_title'>7thbyte 写道</div><div class='quote_div'><div class='quote_title'>卒子99 写道</div><div class='quote_div'><div class='quote_title'>黑暗浪子 写道</div><div class='quote_div'>1到50共有五十个数字,随即去掉一个数字,剩下49个放在一个数据集合中(可能是数组,可能是list,更有可能是set) <br/>写一段代码,把那个去掉的数字找出来。 <br/>要求:效率最高,查找速度最快。 <br/>上海sungard公司出的 <br/></div><br/>这个些数字放到集合中有什么要求?如果是有序放到集合中,我会使用折半查找的思想来做,必如先找到index = 24的数字,判断是小于25,还是等于25。 <br/>如果小于25则在前25个数字中,等于25则在后25个数字中找 <br/><br/><br/>如果是无序放上的,也不知道有什么好方法了,先排一次序?还是依次比较 <br/><br/>呵呵,还请指教正确解答</div><br/><br/>(1+50)*50/2 - 集合元素和</div>我和你的做法一样<br/><p> </p>
22 楼 7thbyte 2008-03-07  
卒子99 写道
黑暗浪子 写道
1到50共有五十个数字,随即去掉一个数字,剩下49个放在一个数据集合中(可能是数组,可能是list,更有可能是set)
写一段代码,把那个去掉的数字找出来。
要求:效率最高,查找速度最快。
上海sungard公司出的

这个些数字放到集合中有什么要求?如果是有序放到集合中,我会使用折半查找的思想来做,必如先找到index = 24的数字,判断是小于25,还是等于25。
如果小于25则在前25个数字中,等于25则在后25个数字中找


如果是无序放上的,也不知道有什么好方法了,先排一次序?还是依次比较

呵呵,还请指教正确解答


(1+50)*50/2 - 集合元素和
21 楼 7thbyte 2008-03-07  
用最快速的方式取出形如
"abcd(efg)hi(jk)lmn(opp)q"
字符串中每个括号里的字串,用逗号分隔

相关推荐

    ProE5.0入门到精通DVD 密码手册

    《ProE5.0入门到精通DVD 密码手册》是一部专为初学者设计的教程,旨在帮助读者从零基础快速掌握ProE5.0这一强大的三维产品设计软件。ProE,全称Product Engineering,是美国参数技术公司(PTC)开发的基于特征的三维...

    STM32F405xxSTM32F407xx数据手册.rar

    STM32F405xx和STM32F407xx是STMicroelectronics公司生产的高性能微控制器,属于STM32系列的Cortex-M4内核产品。...这份文档是开发过程中的必备参考资料,对于学习和精通STM32F405xx和STM32F407xx系列微控制器至关重要。

    python背记手册 从入门到精通

    python背记手册 从入门到精通

    Panabit入门到精通配置手册

    Panabit入门到精通配置手册

    精通CANOE使用手册

    ### 精通CANoe使用手册 #### CANoe概述与功能 CANoe是业界领先的用于CAN(Controller Area Network)、LIN(Local Interconnect Network)、FlexRay、Ethernet和其他网络协议的开发工具套件。它由德国Vector公司...

    BIOS引导从入门到精通学习手册

    BIOS引导从入门到精通学习手册

    阿里python入门到精通手册公开发布,企业级教程.pdf

    Python是一种高级编程语言,以其简洁明了的语法和强大的功能深受程序员喜爱。...对于那些想要学习Python的人来说,阿里的这本入门到精通手册提供了详尽的指导和丰富的实例,是不可多得的学习资源。

    易e语言从入门到精通手册教程下载

    《易语言从入门到精通手册教程》是一份全面介绍易语言编程知识的资源,适合初学者及有一定基础的程序员学习。易语言,又称E语言,是中国本土开发的一种简单易学的中文编程语言,旨在降低编程的门槛,让更多人能够...

    Oracle 傻瓜手册-入门到精通

    Oracle入门到精通的傻瓜手册。本手册介绍Oracle配置的基本方法,描述的是“所然”而不是“所以然”。全部操作以命令行方式出现,不涉及GUI(只有白刃战才是真正的战斗)。鉴于大家对Windows已经十分熟悉,同时为了...

    视易精通操作手册.doc

    视易精通操作手册 视易精通收银管理系统用户操作手册旨在帮助用户快速掌握视易精通收银管理系统的操作方法和技巧,从而提高工作效率和质量。以下是视易精通操作手册中的主要知识点: 登录系统 视易精通收银管理...

    嵌入式开发 linux 面试笔试收集经典题

    在嵌入式开发领域,Linux系统扮演...总之,掌握Linux基础知识、精通C/C++编程、理解嵌入式软件测试方法和策略,是成功通过这类面试的关键。不断实践、深入学习并积累实战经验,将有助于提升在嵌入式开发领域的竞争力。

    精通SQL Server 2008完全自学手册.part1/4

    精通SQL Server 2008完全自学手册.part1

    精通SQL Server 2008完全自学手册.part2/4

    《精通SQL Server 2008完全自学手册》.part2

    完全精通局域网手册

    完全精通局域网手册,不要小看局域网的知识哦

    【Photoshop实例教程】路径完全精通手册

    本教程——“Photoshop实例教程:路径完全精通手册”旨在帮助用户全面理解和掌握这一关键技能。 首先,路径是由直线、曲线和锚点组成的图形轨迹,可以理解为画笔的虚拟轨迹。在Photoshop中,路径分为工作路径和路径...

    阿里Python入门到精通背记手册企业级教程中文PDF版最新版本

    Python入门到精通手册是一个阿里巴巴内部Python背记手册,从人门到精通,教程通俗易懂,实例丰富,既有基础知识,也有实战技能,能够帮助读者快速⼊门,是你学习python的葵花宝典。需要的朋友可下载学习试试! ...

    完全精通局域网手册.rar

    《完全精通局域网手册》是一本专注于局域网技术的综合指南,旨在帮助读者深入理解和熟练掌握局域网的相关知识。局域网(Local Area Network,简称LAN)是计算机网络的一种,它覆盖的地理范围相对较小,通常在一座...

    ThinkPHP5.0快速入门控制器入门到精通开发手册3合1

    以上只是《ThinkPHP5.0完全开发手册》、《ThinkPHP5快速入门》和《ThinkPHP5控制器从入门到精通》这三本书籍中的一部分内容,实际学习过程中,读者还会接触到路由配置、模型、视图、模板引擎、缓存、权限控制等更多...

    Java从入门到精通面试宝典-求职技巧职业规划中文PDF版最新版本

    **Java面试宝典:从入门到精通的求职指南** 《Java面试宝典》是一本与《Java从入门到精通》配套使用的教程,专为Java求职者设计。本书不仅涵盖了Java技术面试的各个方面,还包含了求职技巧和职业规划的指导。以下是...

    STM8S从入门到精通手册

    《STM8S从入门到精通手册》是一本帮助初学者和开发者学习STM8S系列微控制器的实用指南。 本手册主要内容涉及以下知识点: 1. STM8S单片机的特点与分类 STM8S单片机具有如下特点:低功耗、高性能的CPU核心、丰富的...

Global site tag (gtag.js) - Google Analytics