2021-06-26 JAVA开发岗-民生银行笔试算法题
第一题:
输入:
第一行:学生人数
接下来每一行:姓名 语文分 数学分 英语分
输出:(分数全相同排名一样,按姓名字典序排序)
rank1 :name: total: chinese: math: english:
rank2:…
rank2:…
rank4:…
import java.util.*;public class msBank01 {public static void main(String[] args) {Scanner sc = new Scanner(System.in);//获取第一行(学生数)String s = sc.nextLine();//创建一个排序Set 传进一个排序规则匿名内部类TreeSet<Student> studentTreeSet = new TreeSet<>((o1, o2) -> {//根据总分--语文--数学--英语--姓名(字典序)进行排序if (o1.getTotal() != o2.getTotal()) {return o2.getTotal() - o1.getTotal();} else if (o1.getChinese() != o2.getChinese()) {return o2.getChinese() - o1.getChinese();} else if (o1.getMath() != o2.getMath()) {return o2.getMath() - o1.getMath();} else if (o1.getEnglish() != o2.getEnglish()) {return o2.getEnglish() - o1.getEnglish();} else {return o1.getName().compareTo(o2.getName());}});//按行遍历 创建student塞入TreeSetfor (int i = 0; i < Integer.parseInt(s); i++) {Student student = new Student();String help = sc.nextLine();String[] s1 = help.split(" ");student.setName(s1[0]);student.setChinese(Integer.parseInt(s1[1]));student.setMath(Integer.parseInt(s1[2]));student.setEnglish(Integer.parseInt(s1[3]));student.setTotal(Integer.parseInt(s1[1])+Integer.parseInt(s1[2])+Integer.parseInt(s1[3]));studentTreeSet.add(student);}//遍历TreeSet index代表rank(排名)//plus意义,排名相同时,plus代替index++int index = 0;int plus = 1;Student pre = new Student();for (Student student : studentTreeSet) {if (index!=0&&pre.getTotal()==student.getTotal()&&pre.getChinese()== student.getChinese()&&pre.getMath()==student.getMath()&&pre.getEnglish()== student.getEnglish()){print(student,index);plus++;}else {index = index+plus;plus=1;print(student,index);}//pre记录上一个学生,比较是否两人排名一样pre = student;}}//提取出的print方法public static void print(Student student,int rank){System.out.println("rank:"+rank+" name:"+student.getName()+" total:"+student.getTotal()+" chinese:"+student.getChinese()+" math:"+student.getMath()+" english:"+student.getEnglish());}//学生类static class Student{String name;int Chinese;int Math;int English;int Total;//...getter and setter...
}
第二题:
第一行输入"1" 判断有几行非空
输入"Q"打印“Quit”
输入其他:打印
Wrong input, Please re-choose
Menu Function Test
1: Count Lines
Q: Quit
import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner sc = new Scanner(System.in);String s = sc.nextLine();if ("1".equals(s)){//1int res = 0;while (sc.hasNext()){String str = sc.nextLine();if (str!=null&&str.length()!=0){res++;}}System.out.println(res);}else if ("Q".equals(s)){//QuitSystem.out.println("Quit");}else {System.out.println("Wrong input, Please re-choose\n" +"Menu Function Test\n" +"1: Count Lines\n" +"Q: Quit");}}
}
2021-06-26 JAVA开发岗-民生银行笔试算法题相关推荐
- java开发岗面经常见题汇总
参考:绝大部分答案来自网络搜索,特别是JavaGuide. 一.Linux常用命令 1 常用命令大全 2 ping , telnet, curl 使用 ping 测试某个地址是否能连接.ping命令本 ...
- 天津大宇宙java开发岗面试
天津大宇宙java开发岗面试 笔试 面试 笔试 刚开始来我们这里宣讲,介绍了一下天津大宇宙的一些情况,这是一家日本公司投资的企业.有想要去日本发展的可以考虑一下.我们面试的是java开发岗. 他们有个 ...
- 2020春招 / 2021秋招阿里、腾讯、字节、快手、美团 JAVA 开发岗面试高频问题总结
2020春招 / 2021秋招阿里.腾讯.字节.快手.美团 JAVA 开发岗面试高频问题总结 2.1 进程和线程的区别? 2.2 进程的调度算法有哪些?(主要) 2.3 常用 IO 模型? 2.4 s ...
- 【格林深瞳22校招开发岗】笔试
[格林深瞳22校招开发岗]笔试 2022-2-25 10:06 - 11:36 这个是跟58挨着,笔试是通过一个网页进行的. 主要有十一道题目 前面有一些和组原408等相关的选择题和填空题(一题4分) ...
- Java 开发岗面试知识点大全解析
本人简介:北京邮电大学土著硕士研究生,CSDN博客专家,熟悉的技术为Java后台开发.在2017年暑期实习校招中拿到了百度.搜狐.京东和去哪儿网的实习Offer:在2018届校园招聘中,拿到了百度.小 ...
- 【第三章:Java开发岗:Redis篇】
点击:[第一章:Java开发岗:基础篇] HashMap.Synchronized.ThreadLocal.AQS.线程池.JVM内存模型.内存屏障.class文件结构.类加载 机制.双亲委派.垃圾回 ...
- 【Java开发岗:SpringCould篇】
点击:[第一章:Java开发岗:基础篇] 计算机基础问题.HashMap.Fail-safe机制/Fail-fast机制.Synchronized.ThreadLocal.AQS.线程池.JVM内存模 ...
- 网易Java开发岗面试分享
应对互联网技术面试绝不仅仅是刷题就可以达到的.首先选择技术岗位,其次每个岗位开始都是先着手面经,多看到了解,提炼出必考的技术点合集,最后针对这些必考技术,系统学习,融会贯通. 对这个岗位的必备技能,一 ...
- 滴滴java开发面试题_滴滴出行(小桔科技)亲身面试经验分享,java开发岗
2020.11.25 概要 本次面试是最近刚面的. PS:本人java开发2年经验,这次面的是滴滴出行(小桔科技)java开发岗. 2020.11.30 滴滴又打来电话了, 预定12.3.星期四面试, ...
最新文章
- 滚动条——WPF ScrollViewer的应用
- php 显示ip所属地 (qq版)
- MongoDB与Spring集成教程
- 通讯录 app 使用哪种协议查找服务器上存储的联系人?,uniapp通讯录查找
- VB得到指定文件夹下的文件列表
- Git:取消合并方式
- 【angularjs】pc端使用angular搭建项目,实现导出excel功能
- 台式计算机拆机步骤ppt,三相异步电动机拆装的方法和步骤.PPT
- CmsEasy7.6.3.2逻辑漏洞
- 自著——30天自制计算机语言解释器 目录
- sql:mysql:函数:字符串函数
- [2019 icpc徐州] H.Yuuki and a problem 带修改的主席树(主席树+树状数组)
- Jenkins节点添加采用agent出错解决方案-not reachable
- 年底大标季来袭,一步之遥2.0投标培训班助你实力升级!
- 4PS-4CS--4RS
- Web前端之HTML超文本标记语言
- google Map API实现地址解析
- LeetCode——2309. 兼具大小写的最好英文字母
- IDEA项目中与Git仓库出现的常见问题_小结
- 浅谈微信小程序的功能定位和使用场景