论坛首页 招聘求职论坛

软通外派华为面试题

浏览 26632 次
精华帖 (0) :: 良好帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2009-09-01  
我做了前两道题 用了1小时 我这种水平去面试几率有多大?


package test;



public class Test {

public static void main(String[] args){
   int[] a={1,3,5,8,77,88,99,4,7};
   int[] d=new int[a.length];
   int c;
   for(int k=0;k<a.length-1;k++){
   for(int b=0;b<a.length-1;b++){
   if(a[b]<a[b+1]){
   c=a[b];
   a[b]=a[b+1];
   a[b+1]=c;
  
   }
   }
   }
   for(int e:a){
   System.out.println(e);
  
   }
   for(int k=0; k<a.length;k++){
   if(k%2==0){
d[k]=a[k/2];
   }
   else{
   d[k]=a[a.length-(k+1)/2];
   }
   }
   for(int e:d){
   System.out.print(e);
  
   }
}
}
0 请登录后投票
   发表时间:2009-09-01  
请大家用双端序列写一下第2题好不好  双端序列我百度了 很迷糊
java.util.Queue 这都没见过 我觉得我这月找工作困难又加大1倍
0 请登录后投票
   发表时间:2009-09-01  
软通动力不要你是你的福气
0 请登录后投票
   发表时间:2009-09-02   最后修改:2009-09-02
for (int i =0 ;i<array.length-2;i+=2){
    for(int j = i+1 ;j<array.length;j++){
       if(array[i]<array[j]){
            array[i] = array[j];
         }
        if(array[i+1]>array[j]){
            array[i+1] = array[j];
         }
    }
}
两个两个冒泡!!!第一个存最大的,第二个存最小的!
0 请登录后投票
   发表时间:2009-09-02  
1题应该是让用冒泡排序吧?如果直接可以用Util也太儿戏了。。

2题用冒泡也可以实现,不过在相邻2个元素交换的判断依据不同,第一次外循环按降序冒泡,第二次按升序,第三次降序,以此类推,如何控制?if else呗。。。
0 请登录后投票
   发表时间:2009-09-02  
面试题可以讨论一下
去那工作的念头就灭了吧
0 请登录后投票
   发表时间:2009-09-02  
第3题

1.
select t1.classid,t1.userid,t1.score from tempInfo as t1,
(select classid,max(score) as score from tempInfo group by classid) as t2
where t1.classid=t2.classid and t1.score =t2.score
2.
select classid,avg(score) as score from tempinfo group by classid having avg(score)>=60 order by score desc
3.
select t1.classid,t1.userid,t1.score from tempinfo t1,(
select classid,count(classid) as num from tempinfo group by classid
)t2 where t1.score>80 and t1.classid =t2.classid and t2.num>20

不知道有没更简单的呢!
0 请登录后投票
   发表时间:2009-09-02  
arfee522 写道
1题应该是让用冒泡排序吧?如果直接可以用Util也太儿戏了。。

2题用冒泡也可以实现,不过在相邻2个元素交换的判断依据不同,第一次外循环按降序冒泡,第二次按升序,第三次降序,以此类推,如何控制?if else呗。。。

2控制直接判断数组大小即可,取一半输出
0 请登录后投票
   发表时间:2009-09-02   最后修改:2009-09-02

	/**
	 * 对int数组进行排序,使
	 * 第1个是最大,
	 * 第2个是最小的,
	 * 第3个是次大的,
	 * 第4个是次小的,
	 * 以此类推
	 */
	public static void x_sort(int a[]){
		Arrays.sort(a);
		LinkedList queue = new LinkedList();
		for (int i = 0; i < a.length; i++) {
			queue.add(a[i]);
		}
		boolean flag = true;
		for (int i = 0; i < a.length; i++) {
			if(flag)
				a[i] = (Integer) queue.removeLast();
			else
				a[i] = (Integer) queue.removeFirst();
			flag = !flag;
		}
	}




0 请登录后投票
   发表时间:2009-09-02  
大家在排序的时候为什么都用冒泡而不用nlogn的算法呢?
0 请登录后投票
论坛首页 招聘求职版

跳转论坛:
Global site tag (gtag.js) - Google Analytics