飞书社招技术一面 | 飞书面经

时间

2024.05.23

问题

  1. 个人介绍
  2. 疯狂问项目(过往项目都问了一遍,大概20分钟)
  3. 感觉这块答得不够好,基本就是实话实说了,得提前润色一下才行
  4. redis、mq、mysql的一些设计或者底层实现了解吗?
  5. 问的很宽泛、重点说了mysql的b+树索引设计
  6. mysql索引的设计,会考虑哪些因素?
  7. 字段数据区分度较大
  8. left join 和 where 查询较频繁的字段
  9. 要考虑索引覆盖,避免回表查询(来自面试官善意的提醒)
  10. redis底层数据结构实现了解吗?
  11. 类比java,具体不是很清楚(被问过很多次了,需要好好复习下)
  12. 用过RPC吗?
  13. 算法:N数之和

题目描述

不重复的随机数数组[1,3,8,11,13,22,34,61,88,772],总共有10个数字。

取任意数字,不可重复取数据,求它们的和,判断结果能否等于n。

输入为数组arr,目标和n。

输出true/false

题解:

public static void main(String[] args) {
        int[] arr = new int[]{1,8,10,11,13,22,34,61,88,772};
        System.out.println(combinationSum(arr, 17));
    }

    /**
     回溯 + 剪枝
     */
    public static boolean combinationSum(int[] candidates, int target) {
        //排除不合理数组
        if(candidates.length == 0) {
            return false;
        }
        return backtrack(candidates, 0, target, 0);
    }

    static boolean backtrack(int[] candidates, int start, int target, int sum) {

        if(sum == target) {
            // 找到目标和
            return true;
        }
        if (sum > target) {
            // 超过目标和,直接结束
            return false;
        }
        boolean res = false;
        for(int i = start; i < candidates.length; i++) {
            // 做选择
            sum += candidates[i];
            // 进入下一层决策树
            res = backtrack(candidates, i + 1, target, sum);
            // 取消选择
            sum -= candidates[i];
            if (res) break;
        }
        return res;
    }

参考lc:39组合总和,不过做了简化,只要符合就返回ture,否则false

个人总结

  1. 自我介绍需要提前准备一份
  2. 项目经历需要整理文字叙述
  3. 八股需要复习,熟练后深入理解
#字节面经##面经##社招面经##社招#
全部评论

相关推荐

04-07 20:46
宁夏大学 Java
一个轮子项目一个苍穹外卖,外卖项目包装成其他的,但是技术点都没变,不知道这样可行不可行。有没有好心人帮我提点建议啊
拿铁不coding:找实习微服务可不学,mq大致场景要了解,但不学问题也不大。我没写在简历上,也没咋问。重点还是mysql redis Java的八股,我根据真实面经整理得到的最全(高/中/低频)面试题,需要的牛u可以订阅一手我的专栏,祝好运
点赞 评论 收藏
分享
点赞 评论 收藏
分享
佛系的本杰明反对画饼:个人看法,实习经历那段是败笔,可以删掉,它和你目标岗位没什么关系,没有用到什么专业技能,甚至会降低你项目经历内容的可信度。个人技能那里可以再多写一点,去boss直聘上看别人写的岗位要求,可以把你会的整合一下,比如熟悉常规的开关电源拓扑结构(BUCK、正激、反激、LLC等),熟悉常用的通信总线协议和通信接口,如UART,IIC,SPI等。简历首先是HR看的,HR大多不懂技术,会从简历里去找关键字,你没有那些关键字他可能就把你筛掉了,所以个人技能尽量针对着岗位描述写一下。还有电赛获佳绩,获奖了就写什么奖,没获奖就把获佳绩删了吧,要不会让人感觉夸大。
点赞 评论 收藏
分享
评论
12
15
分享

创作者周榜

更多
牛客网
牛客企业服务