1、名企面试Sybase面试题目,2007-05ING, sybase以下是我在sybase面试时所涉及的部分问题: 数据库 1事物及其四个特性,以及如何保持着四个特性,特别是并发控制有哪些算法 2如果你设计一个数据库,需要考虑哪些问题 操作系统 1进程和线程的定义以及实现同步的算法 2编程实现信号量同步控制算法 JAVA和JVM 1String和StringBuffer区别,String是如何实现immutable的 2GC原理及其算法 OO 1面向对象的三个特性 2利用面向对象设计一个系统,你会怎么设计? 数据结构 1查找算法及其时间复杂度 2有100个数,怎么可以快速找到第30个大的数 38
2、皇后问题SAP面试题目SQL, dow1.extern C 2. _std_afx3. C+为何强制类型4. static cast, Dynamic cast, Const cast5. C里面的函数堆栈同C+的函数堆栈的区别6. DB2的那个端口7、SQL server 扩展存储过程8、 Class A 的内存镜像9. rr serializable 怎么实现?区别?10、VC 里面的异常机制要打开哪个选项?11、Windows的COPY ON SITE 是怎么实现的12、http协议的 keep alive 作用13、Process in linux, minix,的不同14、数据库里的
3、INSTANCE15、C#调用win32的API是如何实现的?16、数据库是怎样实现INDEX的17、数据库DBMS设计时需要考虑的问题 18、ISOLATION LEVEL? 是如何实现的Google 的疯狂面试题google发信人: boolean (boolean), 信区: Job Google 的疯狂面试题 学校班车里面能装多少高尔夫球? 几星期前,一个朋友接受了Google公司的面试,他透露了面试中的一些问题。顺便,我把从其他几个曾经面试过的人那里听来的内容也整理在一起。最大的互 联网公司Google的一份面试题集,看看你是否能够回答出来。其中很多问题都是开放式的,正确的解答有许多
4、种,所以在这里就不提供答案了。 一辆学校班车里面能装多少个高尔夫球? 你被缩小到只有硬币厚度那么点高(不是压扁,是按比例缩小),然后被扔到一个空的玻璃搅拌器中,搅拌刀片一分钟后就开始转动。你怎么办? 要是让你清洗整个西雅图的所有窗子,你会收取多少费用? 怎么才能识别出电脑的内存堆栈是向上溢出还是向下溢出? 你要向你8岁的侄子解释什么是数据库,请用三句话完成。 时钟的指针一天内会重合几次? 你需要从A地去B地,但你不知道能不能到,这时该怎么办? 好比你有一个衣橱,里面塞满了各种衬衫,你会怎么整理这些衬衫,好让你以后找衬衫的时候容易些? 有 个小镇有100对夫妇,每个丈夫都在欺骗他的妻子。妻子们都
5、无法识破自己丈夫的谎言,但是她们却能知道其他任何一个男人是否在撒谎。镇上的法律规定不准通 奸,妻子一旦证明丈夫不忠就应该立刻杀死他,镇上所有妇女都必须严格遵守这项法律。有一天,镇上的女王宣布,至少有一个丈夫是不忠的。这是怎么发生的呢? 在一个重男轻女的国家里,每个家庭都想生男孩,如果他们生的孩子是女孩,就生下一个,直到孩子是男孩为止。这样的国家,男女比例会是多少? 如果在高速公路上30分钟内到一辆车开过的几率是0.95,那么在10分钟内看到一辆车开过的几率是多少 (假设为常概率条件下) 如果你看到钟的时间是3:15,那一刻时针和分针的夹角是多少?(肯定不是0度!) 4 个人晚上要穿过一座索桥回
6、到他们的营地。可惜他们手上只有一支只能再坚持17分钟的手电筒。通过索桥必须要拿着手电,而且索桥每次只能撑得起两个人的份 量。这四个人过索桥的速度都不一样,第一个走过索桥需要1分钟,第二个2分钟,第三个5分钟,最慢的那个要10分钟。他们怎样才能在17分钟内全部走过索 桥? 你和朋友参加聚会,包括你们两人在内一共有10个人在场。你朋友想跟你打赌,说这里每有一个人生日和你相同,你就给他1元,每有一个人生日和你不同,他给你2元。你会接受么? 全世界有多少个钢琴调音师? 你有8个一样大小的球,其中7个的重量是一样的,另一个比较重。怎样能够用天平仅称两次将那个重一些的球找出来。 有5个海盗,按照等级从5到
7、1排列。最大的海盗有权提议他们如何分享100枚金币。但其他人要对此表决,如果多数反对,那他就会被杀死。他应该提出怎样的方案,既让自己拿到尽可能多的金币又不会被杀死?(提示:有一个海盗能拿到98%的金币) 你觉得自己有把握去Google工作了么?去用友面试时出的几道面试题 (含答案) ZZoracle, SQL, 用友1.Hashtable和HashMap有什么区别? 2.你怎么理解MVC模式? 3.SQLServer中左联接查询用left join,Oracle中用什么? 4.SQLServer中的数据库,在Oracle中对应的是什么? 5.如果SQLServer中有两个数据库,那么让你把这两
8、个数据库对应到Oracle中,你应该怎么做? 6.有两个页面a.jsp和b.jsp,要从a.jsp传值到b.jsp有几种方法?分别是什么? 7.有三个页面,a.jsp,b.jsp和c.jsp,流程是:a.jsp-b.jsp-c.jsp,其中a.jsp中提交的数据要在c.jsp中访问,用最简单的方法怎么做?注意不能放在session里 8.映射是什么?你怎么理解映射? 9.Hibernate中:不看数据库,不看XML文件,不看查询语句,怎么样能知道表结构? 10.SQLServer支持集群吗? 11.为什么要用MVC?我从JSP页面直接访问数据库不是更简单吗,为什么非要先提交到控制器再做处理?
9、12.在struts中,假设有一个对数据库中一张表的增删改查的操作,你是写一个action还是写多个action?为什么? 13.struts中的actionform有什么好处? 14.用过Hibernate吗,用它有什么好处? 15.通常所说的web应用程序分3层,即MVC,如果我想分4层,应该怎么分? 1.Hashtable和HashMap有什么区别? a.Hashtable是继承自陈旧的Dictionary类的,HashMap继承自AbstractMap类同时是Java 1.2引进的Map接口的一个实现。 b.也许最重要的不同是Hashtable的方法是同步的,而HashMap的方法不是
10、。这就意味着, 虽然你可以不用采取任何特殊的行为就可以在一个 多线程的应用程序中用一个Hashtable, 但你必须同样地为一个HashMap提供外同步。一个方便的方法就是利用Collections类的静态的synchronizedMap()方法, 它创建一个线程安全的Map对象,并把它作为一个封装的对象来返回。这个对象的方法可以让你同步访问潜在的HashMap。 这么做的结果就是当你不需要同步时,你不能切断Hashtable中的同步(比如在一个单线程的应用程序中), 而且同步增加了很多处理费用。 c.第三点不同是,只有HashMap可以让你将空值作为一个表的条目的key或value。 Has
11、hMap中只有一条记录可以是一个空的key,但任意数量的条目可以是空的value。 这就是说,如果在表中没有发现搜索键,或者如果发现了搜索键,但它是一个空的值,那么get()将返回null。 如果有必要,用containKey()方法来区别这两种情况。 d.HashMap去掉了Hashtable的contains方法,保留了containsValue和containsKey方法 e.Hashtable中hash数组默认大小是11,增加的方式是 old*2+1。HashMap中hash数组的默认大小是16,而且一定是2的指数 2.你怎么理解MVC模式? MVC是SUN早期提出的model2开发模
12、式,强制的把视图控制和模型层分开 不仅实现了功能模块和显示模块的分离,同时它还提高了应用系统的可维护性、可扩展性、可移植性和组件的可复用性 3.SQLServer中左联接查询用left join,Oracle中用什么? 左连接:select(nvl(a.c,0)-nvl(b.c,0) from a,b where a.id(+)=b.id 右连接:select(nvl(a.c,0)-nvl(b.c,0) from a,b where a.id=b.id(+) 自连接:select(nvl(a.c,0)-nvl(b.c,0) from a,b where a.id(+)=b.id(+) 说明:加
13、号写在左就是左连接,写在右就是右连接,看加号的方法来定 4.SQLServer中的数据库,在Oracle中对应的是什么? 表空间 5.如果SQLServer中有两个数据库,那么让你把这两个数据库对应到Oracle中,你应该怎么做? 在Oracle中建一个用户,对应两个表空间 6.有两个页面a.jsp和b.jsp,要从a.jsp传值到b.jsp有几种方法?分别是什么? a:最常用的方法是用form中的text,,然后在b.jsp页面中这样获取 String username=request.getParameter(username); b:直接在Url地址栏里面输入第一个页面的地址,在后加问号
14、,然后把要传的参数及值写在后面,如有多个用&隔开,然后在下一页面用 request.getParameter(参数名)来获取,例如: 在b.jsp中可用这样获取:String username=request.getParameter(username);String username=request.getParameter(password); c:在form中放hidden,如:,获取方法同上 说明:传值的方法有很多种,以上是最常用最简单的几种方式,当然,如果传的值有中文的话,需另做处理 6.有三个页面,a.jsp,b.jsp和c.jsp,流程是:a.jsp-b.jsp-c.jsp,其中
15、a.jsp中提交的数据要在c.jsp中访问,用最简单的方法 怎么做?注意不能放在session里 用隐藏表单域,即在b.jsp页面中用N个hidden把上一页面提交过来的信息保存下来,然后和当前一起提交,再到c.jsp里面获取 说明:尽量不要用session和少用session 7.jsp和servlet有什么区别? a:servlet是在java代码里面放html,jsp是在html里面放java代码(最后运行的时候服务器会把JSP解析成servlet) b:servlet是一个java类,有自己的映射,而jsp不是 说明:区别太多8.映射是什么?你怎么理解映射? 映射即别名,通过别名可以访
16、问 9.Hibernate中:不看数据库,不看XML文件,不看查询语句,怎么样能知道表结构? 看表结构对应的类文件,比如UserInfo表对应的UserInfo.java文件 10.SQLServer支持集群吗? 支持,但是是属于热备份类型,不能做负载平衡。不过符合你的条件。 首先系统做集群,数据库文件放到磁盘阵列里,双机或多机共同访问磁盘阵列,就可以了 IIS可以做集群后负载平衡。 11.为什么要用MVC?我从JSP页面直接访问数据库不是更简单吗,为什么非要先提交到控制再做处理? MVC各施其职,互不干涉 在MVC模式中,三个层各施其职,所以如果一旦哪一层的需求发生了变化, 就只需要更改相应
17、的层中的代码而不会影响到其它层中的代码。 有利于开发中的分工 在MVC模式中,由于按层把系统开,那么就能更好的实现开发中的分工。网页设计人员可以进行开发视图层中的JSP, 对业务熟悉的开发人员可开发业务层,而其它开发人员可开发控制层。 有利于组件的重用 分层后更有利于组件的重用。如控制层可独立成一个能用的组件,视图层也可做成通用的操作界面 说明:这个好处就太多了! 12.在struts中,假设有一个对数据库中一张表的增删改查的操作,你是写一个action还是写多个action?为什么? 写一个action,让这个action继承自DispatchAction,然后在struts-config.
18、xml中给这个action映射加一参数,parameter=method 这个在提交到这个action中时,会根据传来的参数中method的值来执行相应的action的方法,比如,http:/localhost:8080/login.do?method=doLogin 这个提交到action的时会自动找方法名叫doLogin的方法,参数返回值原来一样ActionForward 13.struts中的actionform有什么好处? struts的actionform其实不好,里面有一堆属性,虽然可以自动填充,但是你会发现,在很多情况下(比如你用到Hibernate) 你还要需要自动写一个数据库
19、表的映射类,通常是domain.UserInfo.java,这样就和strutsform中的属性重复,所以他很多余, struts1.1版本,保留了actionform,struts1.2中已经有了新的LazyValidatorForm,但仍然保留了原有的actionform, 而在struts 2.0中已经把actionform去掉了 下面是解决方法 a: 把actionform换成DynaActionForm ,和原来不同的是在dynaActionForm可以domain.UserInfo.java的一个实例做为他的一个属性 这样你就不需要在里面写一堆的get,set方法,只是在页面上绑定
20、稍有不同 b: 把actionform换成org.apache.struts.validator.LazyValidatorForm,这样你完全不用写你的actionform这个类,直接在xml里面做 相应配置,当然也可以加上验证框架 警告:这个问题是陷阱,实际上struts的actionform很不好,非常麻烦,用久了你会发现他其实是多余的,所以这个问题你应该说他的坏处, 和怎么把actonform去掉14.用过Hibernate吗,用它有什么好处? Hibernate的最大的好处就是简化数据库的操作,允许你的代码以对象模式来访问数据库内容, 比如通常我们找一个User的资料需要select
21、出所需要的资料,而通过hibnate我们可以把这个User的资料作为一个对象来看待 ,通过User.getName()或者User.getId()等操作来获得,这样就完全统一了上层JAVA或者C#等OO语言中对于数据库的非OO操作的不和谐了. 另外对于复杂的表和表之间的关联我们也不用去使用复杂的Select等SQL来操作,而使用对象可以方便获得, 比如多对多关系某用户属于的部门的名称,虽然底层数据库使用了3个表的主键关联操作, 但是我们可以通过User.getDep().getName()来简单的获得,这个就是持久化对象的好处了 说明:好处太多,只能在用的过程中慢慢体会 只能说一个字:爽 15
22、.通常所说的web应用程序分3层,即MVC,如果我想分四层,应该怎么分? 加一个Hibernate数据持久层 转载请注明出自应届生求职招聘论坛 中兴笔试+面试题目面试, 中兴此帖已被设为推荐 1某人在某个市场某个商家买了某台电脑,请用你熟悉的计算机语言表达出里面的关系. 其中有商家类,买家类,商品类。还要有买方法,卖方法。 2一个完整的单例模式 3曹操南下攻打刘备,刘备派关羽守锦州,关羽派张飞去守城门。刘备又派诸葛亮去向孙权求援。孙权派兵攻打曹操! 请画出UML图 2006年12月中兴在我们学校的笔试,最后的大题 (其实这些大公司的笔试不难,也不就是如此,只要学一下数据结构就可以搞定!) 排序
23、及查找方法 #include #include#define N 11/*用监视哨查找*/int search(int array,int n,int k)int i; i=n-1;array0=k;while(array!=k) i-;return(i);/*折半查找法*/int halfsearch(int array,int n,int k)int i,j,mid; i=1;j=n;while(i=j)mid=(i+j)/2; if(k=arraymid) return(mid);else if(karraymid) j=mid-1; else i=mid+1;return(0);/*冒
24、泡排序法*/void mpsort(int array)int i,j,a;a=0; for(i=1;iN;i+) for(j=i+1;jarrayj) a=array; array=arrayj; arrayj=a;/*直接插入排序*/void insertsort(int array)int i,j; for(i=2;iN;i+) array0=array;j=i-1;while(array0arrayj) arrayj+1=arrayj-; arrayj+1=array0;/*建立*/void creat(int array)int i; printf(enter the array:n
25、); for(i=1;iN;i+) scanf(%d,&array);/*显示*/void print(int array) int i; printf(The numbers after sort is:n); for(i=1;iN;i+) printf(%d ,array); printf(n); main()int a11,i,x,chang; /*printf(enter the arrayn); for(i=1;inext=NULL;return 1;else return 0;2插入操作Status ListInsert_L(LinkList &L,int i,ElemType e
26、)p=L,j=0;while(p&jnext;+j;if(!p|ji-1) return ERROR;s=(LinkList)malloc(sizeof(LNode);s-data=e;s-next=p-next;p-next=s;return OK;/ListInsert_L 3删除操作Status ListDelete_L(LinkList &L,int i,ElemType &e)p=L,j=0;while(p&jnext;+j;if(!p-next|ji-1) return ERROR;q=p-next;p-next=q-next;e=q-data;free(q);return OK;/ListDelete_L 4取某序号元素的操作Status GetElem_L(LinkList &L,int i,ElemType &e)p=L-next,j=1;while(p&jnext;+j;if(!p|ji) return ERROR;e=p-data;return OK;
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1