蚂蚁金服 Java开发专家 一面在线编程题

//

1、用java代码实现LinkedList的add()和remove()方法。要求自行设计LinkedList数据结构,不要外部类库和辅助函数来处理。
2、有三个线程ID分别是A、B、C,请用多线编程实现,在屏幕上循环打印10次ABCABC,请补充以下代码:
public class Test {  
    public static void main(String[] args) {  
        MajusculeABC maj = new MajusculeABC();  
        Thread t_a = new Thread(new Thread_ABC(maj , 'A'));  
        Thread t_b = new Thread(new Thread_ABC(maj , 'B'));  
        Thread t_c = new Thread(new Thread_ABC(maj , 'C'));  
        t_a.start();  
        t_b.start();  
        t_c.start();  
    }  
}  
class MajusculeABC {  
请补充代码
}  
class Thread_ABC implements Runnable {
请补充代码
}
3、写一段死锁的代码



4、红包算法,输入红包金额和领取人数,返回每个人领取的红包金额,金额单位为分
Long[] allocate(Long amount, int nunmber);

5、小明向【蚂蚁借呗】申请了一笔现金借款用于装修,该笔借款由网商银行和X银行一起提供资金,其中网商银行出资金额:A元,某银行出资金额:B元;贷款总共N期,小明看到的还款计划如下表格(等额本金,每期还X本金),编写一段代码计算出两家银行视角的还款计划(A1A2A3…,B1B2B3…):
期次号	分期开始时间	分期结束时间	客户视角还款本金	网商银行视角还款本金	X银行视角还款本金
1	2017-01-01	2017-02-01	     X	        A1	        B1

2	2017-02-01	2017-03-01	     X	        A2	        B2
3	2017-03-01	2017-04-01	     X	        A3	        B3


N	…	…	     X	        …	         …

6、收益分摊算法
/**
     * 假定A和B金融机构联合开展贷款业务,并约定所得利息收益按照2:1分配,总计贷款给了1万个人,
     * 对于每个人利息收益如何分配,才能保证尽可能公平(收益分配单位精确到分)
     * @param amount 需要分摊的金额(单个人)
     * @param rateMap key为机构编码, value为占的比例
     * @return key为机构编码,value为分得的收益
*/
    public static Map<String, Long> allocate(Long amount, Map<String, Long> rateMap) {
        return null;
}






猜你喜欢

转载自blog.csdn.net/sinat_25926481/article/details/89219914