- 分享
- 0
- 人气
- 0
- 主题
- 2
- 帖子
- 259
- UID
- 311150
- 积分
- 251
- 阅读权限
- 14
- 注册时间
- 2010-4-6
- 最后登录
- 2013-12-9
- 在线时间
- 185 小时
|
本帖最后由 shippo 于 2011-1-13 03:24 AM 编辑
回复 10# 宅男-兜着走
第二题要init person class 的话就要有个原始origin,方便起见,我把person class 留下father 和 name而以。
我会这样:
- person origin=null;
- person a=new person(origin,"Alan");
- person b=new person(a,"Jam");
- person c =new person(b,"Alex");
- person d=new person(c,"Yash");
-
- person.peoples=new person[10];
- person.peoples[0]=origin;
- person.peoples[1]=a;
- person.peoples[2]=d;
- person.peoples[4]=c;
- person.peoples[3]=b;
-
- person result=person.GetGrandChild(a,person.peoples);
复制代码
- private static person GetChild(person child,person[]pp)
- {
- if(child!=null&&child.Name!=null)
- {
- for(int i=0;i<pp.Length;i++)
- {
- if(pp[i]!=null&&pp[i].father!=null)
- {
- if(pp[i].father.Name==child.Name)
- return pp[i];
- }
- }
- }
- return null;
- }
-
- public static person GetGrandChild(person grand,person[] pp)
- {
- return GetChild(GetChild(grand,pp),pp);
- }
复制代码 如果有时间限制,我只能写出上面的,如果有多个grandChild只能找到一个grandChild。 |
|