news 2026/6/9 0:48:56

word手写简单面试题(最简单的题都做的不堪入目)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
word手写简单面试题(最简单的题都做的不堪入目)

目录标题

      • 一、题目1
      • 二、题目2
      • 三、总结

一、题目1

.有一个类 Pair,含有两个成员 a 和 b,如果两个 Pair 对象的 a 和 b 都相等,则认为
这两个对象相等。
@Data
public class Pair {
Integer a;
Integer b;
}
有两个 List, List l1, List l2, 写一个函数,求这两个 List 的交集,即返回这两个
List 当中相同的元素,放在一个集合中返回。注意,请尽量写准确清晰,按照可执行的 Java
代码写

我的答案

publicset<Pair>fn(List<Pair>l1,List<Pair>l2){set<Pair>resultSet=newHashSet<>();l1.stream().map(item=>{for(Pairinner:l2){//Integer转换比较可能有误if(inner.getA().equals(item.getA())&&iner.getB().equals(item.getB()){resultSet.add(inner);}}})returnresultSet;}

AI修正后代码

importjava.util.*;importjava.util.stream.Collectors;publicSet<Pair>fn(List<Pair>l1,List<Pair>l2){Set<Pair>resultSet=newHashSet<>();for(Pairp1:l1){for(Pairp2:l2){if(p1.getA().equals(p2.getA())&&p1.getB().equals(p2.getB())){resultSet.add(p1);// 可以添加p1或p2,因为它们相等break;// 找到后跳出内层循环}}}returnresultSet;}

标准答案(把我的原来的方法效率是O(n²),使用HashSet可以优化到O(n)。)
使用Stream API的简洁写法:

publicSet<Pair>fn(List<Pair>l1,List<Pair>l2){Set<Pair>set1=newHashSet<>(l1);returnl2.stream().filter(set1::contains).collect(Collectors.toSet());}

注意:
要使HashSet.contains()正常工作,必须在Pair类中正确重写equals()和hashCode()方法:

@DatapublicclassPair{Integera;Integerb;@Overridepublicbooleanequals(Objecto){if(this==o)returntrue;if(o==null||getClass()!=o.getClass())returnfalse;Pairpair=(Pair)o;returnObjects.equals(a,pair.a)&&Objects.equals(b,pair.b);}@OverridepublicinthashCode(){returnObjects.hash(a,b);}}

二、题目2

有如下数据库表,是学生的各科成绩表格
学号 姓名 科目 分数
1 张三 语文 80
1 张三 数学 90
1 张三 英语 70
2 李四 语文 60
2 李四 数学 80
2 李四 英语 90
3 王五 语文 70
3 王五 数学 60 … … … … 问题:
1、 撰写建表 SQL 语句,建立学生成绩表
2、 撰写查询 SQL 语句,输出所有科目平均分大于 80 分的学生
3、 撰写查询 SQL 语句,输出语文成绩比数学成绩好的学生

我的答案

//要加判断或者覆盖create table table{column idvarchar2(16)not NULL primary key,Columnnamevarchar2(16)defaultnull,Columnsubjectvarchar2(16)defaultnull,Columnscorenumber(1000,2)defaultnull,}Selectname from(selectsum(score)/3total,t1.name from table t1 where subject=‘语文’ or subject=‘数学’or subject=‘英语’ groupBy t1.name)t2 where t2.total>80;Selectname from((select t1.score,t1.name from table where subject=‘语文’)t1 left join(select t1.score,t1.name from table where subject=‘数学’)t2)t3 where t1.score>t2.score;

错误分析

  1. 建表语句答案
CREATE TABLE student_score(idVARCHAR2(16)NOT NULL, name VARCHAR2(16), subject VARCHAR2(16), score NUMBER(5,2), PRIMARY KEY(id, subject));

2.输出所有科目平均分大于80分的学生
(竟然忘了还有 having avg )

SELECT name FROM student_score GROUP BY name HAVING AVG(score)>80;

3.输出语文成绩比数学成绩好的学生

SELECT c.name FROM student_score c JOIN student_score m ON c.name=m.name WHERE c.subject='语文'AND m.subject='数学'AND c.score>m.score;SELECT c.name FROM student_score c LEFT JOIN student_score m ON c.name=m.name AND m.subject='数学'WHERE c.subject='语文'AND(c.score>m.score OR m.score IS NULL);

三、总结

功能 思路都是正确的,但是太复杂,在word里面写代码不容易啊(没有提示)
菜就得多练

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/30 11:43:42

大模型如何突破“认知茧房”?RAG+MCP构建外部脑接口​

RAG与MCP&#xff1a;AI大模型进化的黄金双翼 引言&#xff1a; 在大型语言模型&#xff08;LLM&#xff09;日臻成熟的今天&#xff0c;如何突破其固有限制成为关键议题。检索增强生成&#xff08;RAG&#xff09;与多模态上下文处理&#xff08;MCP&#xff09;技术正成为驱…

作者头像 李华
网站建设 2026/5/30 14:52:19

别再傻傻裸连OpenAI了!教你用Python手搓万能AI中台,实测Gemini 3.0与Sora2秒级响应(附源码+架构图)

前言&#xff1a;那个让服务器崩溃的深夜 作为一名在代码堆里摸爬滚打的博主。 上周经历了一场史诗级的灾难。 公司上线了一款基于GPT-4o的智能客服产品。 上线前测试一切正常。 结果上线当晚&#xff0c;流量稍微冲了一下。 后台日志直接一片飘红。 满屏的 Connection Timed …

作者头像 李华
网站建设 2026/5/30 3:04:12

解析CI/CD工具TeamCity的可视化失败追踪功能

在日常的持续集成流程中&#xff0c;构建失败往往是工程团队首先关注的反馈信号&#xff0c;为了真正理解构建失败背后的质量问题&#xff0c;CI/CD平台TeamCity提供了一套可视化的统计图表机制&#xff0c;让质量指标不再依赖日志分析或直觉判断。 >>最新版本CI/CD工具T…

作者头像 李华
网站建设 2026/6/6 20:06:16

罗伯特・索洛:我们是否面临着缓慢增长的未来

罗伯特・索洛&#xff1a;我们是否面临着缓慢增长的未来 20 世纪 50 年代&#xff0c;当凯恩斯主义主导宏观经济学&#xff0c;经济学家们更关注短期经济波动时&#xff0c;罗伯特・索洛&#xff08;Robert Solow&#xff09;却将目光投向了长期经济增长这一更根本的问题。这位…

作者头像 李华
网站建设 2026/5/30 17:19:58

Pipeline:Beam如何抽象多步骤的数据流水线?

你好&#xff0c;我是程序员贵哥。 今天我要与你分享的主题是“Pipeline&#xff1a;Beam如何抽象多步骤的数据流水线”。 在上两讲中&#xff0c;我们一起学习了Beam是如何抽象封装数据&#xff0c;以及如何抽象对于数据集的转换操作的。在掌握了这两个基本概念后&#xff0…

作者头像 李华