去哪儿后端工程师实操经验与面试题集.docxVIP

  • 0
  • 0
  • 约6.93千字
  • 约 20页
  • 2026-02-14 发布于福建
  • 举报

去哪儿后端工程师实操经验与面试题集.docx

第PAGE页共NUMPAGES页

2026年去哪儿后端工程师实操经验与面试题集

一、编程语言与基础算法(共5题,每题10分,总分50分)

1.题目:

编写一个Java方法,实现将一个字符串中的所有大写字母转换为小写字母,所有小写字母转换为大写字母,其他字符保持不变。例如,输入HelloWorld,输出hELLOwORLD。

2.题目:

给定一个数组,返回其中出现次数最多的元素。如果有多个元素出现次数相同且最多,返回任意一个。例如,输入`[1,2,2,3,3,3]`,输出`3`。

3.题目:

实现一个快速排序算法,对整数数组进行升序排序。要求:不使用递归,手动实现栈模拟递归。

4.题目:

编写Python代码,实现一个函数`is_palindrome(s)`,判断一个字符串`s`是否为回文串(忽略大小写和空格)。例如,`is_palindrome(Aman,aplan,acanal:Panama)`应返回`True`。

5.题目:

用C++实现一个简单的LRU(LeastRecentlyUsed)缓存,容量为3。提供`get(key)`和`put(key,value)`方法,每次操作后返回缓存状态。

二、数据库与SQL(共5题,每题10分,总分50分)

1.题目:

设计一张机票订单表`flights`,包含字段:`order_id`(主键,自增),`user_id`(用户ID),`flight_number`(航班号),`departure_time`(起飞时间),`arrival_time`(到达时间),`price`(价格)。写出创建表的SQL语句,并实现一个查询:统计每个用户的总消费金额。

2.题目:

假设有用户表`users`(`user_id`,`name`,`city`)和订单表`orders`(`order_id`,`user_id`,`amount`)。写出SQL查询,找出消费金额最高的前3个用户及其消费金额。

3.题目:

用MySQL实现分页查询,查询航班表`flights`中起飞时间在最近7天内的航班,每页显示10条,当前页为第2页。

4.题目:

假设航班表`flights`有字段`flight_number`,`origin`,`destination`。写出SQL查询,找出从北京(`origin=北京`)飞往上海(`destination=上海`)的所有航班,并按起飞时间升序排列。

5.题目:

用SQL实现航班表`flights`的数据备份,将所有数据插入到备份表`flights_backup`中。

三、系统设计与架构(共5题,每题10分,总分50分)

1.题目:

设计一个去哪儿类目的推荐系统,输入用户浏览历史和商品信息,输出个性化推荐列表。要求:简述系统架构,说明核心模块和数据存储方案。

2.题目:

假设去哪儿需要支持百万级QPS的航班查询,设计一个高可用、可扩展的后端架构。要求:说明技术选型(如缓存、消息队列、数据库分库分表等)。

3.题目:

设计一个短链服务,输入长URL,输出短URL,支持自定义短码。要求:说明系统架构,如何解决URL冲突问题。

4.题目:

去哪儿需要实现实时航班动态更新(如延误、取消),设计一个发布-订阅系统。要求:说明消息队列选型(如Kafka/RabbitMQ)和消费端设计。

5.题目:

设计一个去哪儿订单退款系统,要求:支持异步处理,保证事务一致性,简述解决方案。

四、分布式与中间件(共5题,每题10分,总分50分)

1.题目:

解释CAP理论,去哪儿哪些场景需要满足一致性(Consistency),哪些场景需要满足可用性(Availability)?

2.题目:

去哪儿后端使用Redis缓存航班价格,如何解决缓存雪崩问题?请简述解决方案。

3.题目:

假设去哪儿订单系统使用分布式事务(如Seata),说明分布式事务的原理和优缺点。

4.题目:

设计一个去哪儿搜索反作弊系统,防止用户刷搜索关键词,简述技术方案。

5.题目:

解释JWT(JSONWebToken)的原理和适用场景,去哪儿哪些地方会使用JWT?

答案与解析

一、编程语言与基础算法

1.Java转换大小写:

java

publicStringtoggleCase(Stringinput){

char[]chars=input.toCharArray();

for(inti=0;ichars.length;i++){

if(Character.isUpperCase(chars[i])){

chars[i]=Character.toLowerCase(chars[i]);

文档评论(0)

1亿VIP精品文档

相关文档