杭州睿琪软件面试题

最近参加了一个面试,首先介绍一下这个公司是做软件开发的,我个人对算法不是很擅长,结果被虐了哭。下面总结一下这次的面试题目,希望以后遇到同样的问题可以参考。
问题1:我们都知道java是面向对象的,请问java当中所有类的父类及其拥有的方法。

这个问题想必大家都会,但却很少有人能全部说出父类的方法。下面给出答案:

答:.所有类的父类是object类.在object子类中可以重写其方法。具体方法列举如下:

1:clone()方法,实现创建1个相同类型的对象。

2:equals()/hashcode():注意这2个方法必须同时重写。

3:.finalize()。回收垃圾调用该方法。

4:toString()。返回对象的字符串,一般都需要重写。

5:getClass()。返回对象的类信息。

6:wait().

7:notify().

其他的详细详细用法及介绍参考:http://www.blogjava.net/jiafang83/archive/2008/12/05/244510.html
问题2:单向链表怎么判定是否有环?

这道题目我学数据结构根本没练过,上课的时候老师也只是提过,没有很详细的讲解,面试问到的时候头都蒙了。哎。。。

给出答案:

方法一:使用p、q两个指针,p总是向前走,但q每次都从头开始走,对于每个节点,看p走的步数是否和q一样。如图,当p从6走到3时,用了6步,此时若q从head出发,则只需两步就到3,因而步数不等,出现矛盾,存在环。

方法二:使用p、q两个指针,p每次向前走一步,q每次向前走两步,若在某个时候p == q,则存在环。

#i
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值