大数据挖掘面试

昨晚,我去了广东才略金融信息科技有限公司进行面试,他们先让我用Java做了一道题

笔试题目:凯兰高每周都会举行康体活动,一般是分成几组进行对抗,现在想设计一个算法,来进行随机分组,假设员工都保存在一数组里面

Array["a1","a2","a3","a4"..."an"],分组数目为k,代码写出算法并分析其时间复杂度

下面是我做的答案

package demo;
import java.util.ArrayList;
import java.util.List;
public class Test {
    public static void main(String[] args) {
        List<String> employee = new ArrayList<>();
        for(int i=0;i<8;i++){
            employee.add("a"+i);
        }
        List<String> group1 = new ArrayList<>();
        List<String> group2 = new ArrayList<>();
        for(int i=0;i<4;i++){
            int j=(int)(Math.random()*employee.size());
            group1.add(employee.get(j));
            employee.remove(j);
        }
        for(int i=0;i<4;i++){
            int j=(int)(Math.random()*employee.size());
            group2.add(employee.get(j));
            employee.remove(j);
        }
        for(String str : group1){
            System.out.println(str);
        }
        System.out.println("+++++++++++++");
        for(String str : group2){
            System.out.println(str);
        }
     }
}

另外,我看了笔试题上还有一道关于数据库的题目(这个题目没让我做)

有一个数据表score存有学生学号和各个科目的成绩,表结构有students math chinese english

a、写一条sql语句输出学生的学号和总分,按总分从高到低进行排名

b、写一条sql语句输出学生的各科的平均分和总平均分

c、求出至少有有一门学科高于平均分的学生学号

create table grade(
id char(10) not null primary key,
math double(4,2) not null,
chinese double(4,2) not null,
english double(4,2) not null
);

insert into grade values ('2013111601',89.0,91.0,78.5);
insert into grade values ('2013111602',80.5,78.0,92.5);
insert into grade values ('2013111603',82.5,67.0,88.5);
insert into grade values ('2013111604',68.5,75.0,83.5);
insert into grade values ('2013111605',89.5,88.0,96.5);

select id,(math+chinese+english) as sum from grade order by sum;
select avg(math) as agv_math,avg(chinese) as avg_chinese,avg(english) as avg_chinese,sum(math+chinese+english)/15 as avg_sum from grade;

select id from grade where math > (select avg(math) from grade) or chinese>(select avg(chinese) from grade) or english>(select avg(english) from grade);


猜你喜欢

转载自blog.csdn.net/abc_321a/article/details/53283217