2025年学完java基础后去刷leetcode

学完java基础后去刷leetcode1 个人情况介绍 首先介绍一下基本情况 本科 211 非科班 硕士 985 计算机 参加 21 届秋招 拿到百度和美团 offer 我从大三开始决定转计算机 先学 Python 然后是 Java SE 大四学了算法和数据结构以及机器学习 当时主要是看书和慕课视频 有很多不足 首先只是入门 没有深入学习 也没有做项目 导致印象不够深刻 其次是学习算法和数据结构只是看书 没有刷题

大家好,我是讯享网,很高兴认识大家。



1 个人情况介绍

首先介绍一下基本情况,本科211非科班,硕士985计算机,参加21届秋招,拿到百度和美团offer。

我从大三开始决定转计算机,先学Python,然后是Java SE,大四学了算法和数据结构以及机器学习。当时主要是看书和慕课视频,有很多不足。首先只是入门,没有深入学习,也没有做项目,导致印象不够深刻。其次是学习算法和数据结构只是看书,没有刷题,很多算法在找工作基本用不到(比如图的几个算法),不刷题就对它们的使用和变化理解不深。

研究生2年,研一上半年做了一百道leetcode,下半年2020年4月开始准备,受到@TALKDATA视频启发,决定做大数据,学了四个月,8月拿到百度offer,9月拿到美团offer。

先看《Hadoop权威指南》,时间不够就放弃了,接着开始看尚硅谷视频,学习各个框架,只跟着做了一些重点。然后做项目,挑了有很多项目,最后确定两个项目,模仿着做出来,将项目进行总结。后面开始背面经,我买了@TALKDATA的《大数据面试开发面试点总结》,从同学那里借了他的Java面试总结,看了一些,有的部分比较偏底层,我没时间看,只看了一些简单的问题,后面主要看尚硅谷文档。

7月开始投简历,有些公司的提前批已经结束了,提前批可能会免笔试,而正常流程是先笔试后面试。刚开始面试表现一般,后面不断总结就越来越好。面试题基本都重复,被问了没见过的问题,会在面试后搜一下,下一次很可能考到。我面试被问到的重点是Spark以及JVM和JUC。

2 笔面试过程介绍

2.1 简历

简历说明你的基本情况,重点在于专业技能(熟悉了解),实习和项目情况。面试官根据这几个方面来问,在实习和项目的介绍里面,可以进一步突出亮点。

2.2 笔试

笔试时间一般是一个半小时到两个小时,有些只考算法题,平均半小时一道,有些也会考选择、填空、问答等。另外,很多公司都有测评,一方面是心理的,另一方面是智力题那种。

2.3 面试

我面试的所有公司都问过实习,我由于时间关系没实习过,但可以看出实习比较重要;接下来是问项目,主要是项目中用到的一些技术,特别是写的亮点;然后问基础;最后是算法题,难度比较低,但是时间较短,比较紧张,最好熟练一下,在网页上(一般是牛客)写,尽量0 bug通过。前面是技术面试,最后是HR面,HR面就是问你一些个人的基本情况。

3 给大家的建议

3.1 刷题

​ 3.1.1 算法题

笔试一般是leetcode的原题或者改编;面试题简单点,一般可以看剑指offer,当然面试题也可能很难。零基础可以看尚硅谷的Java数据结构和算法,不要看scala的,一般不用scala刷题;想看一些算法刷题模板可以去@labuladong 里面获取<<labuladong 的算法小抄>>。另外,尽量按类别来做题。

​ 3.1.2 SQL题

SQL题也可能会出,如果不懂,可以看下尚硅谷的入门,不用搭环境,熟悉SQL语句就好,然后去leetcode或者牛客刷题。

​ 3.1.3 大数据简单问题

比如求top-10和wordcount等。

3.2 面试基础

分为两部分,一方面是Java基础和计算机基础(比如网络、数据库、操作系统等);另一方面是Linux和Hadoop、ZooKeeper、Hive、Flume、Kafka、HBase、Spark 、 Flink以及其他的一些大数据框架。TALKDATA的两本笔记对应这两方面,每个笔记大概有一百个问题及回答,有些问题的回答较为深入和底层,比如HDFS源码解析,我没怎么看,要看懂底层需要时间,如果零基础或者时间不充裕不建议看。这里主要还是尚硅谷系列,先看视频,后面结合文档,不用全学。学完了可以根据需要看牛客网上的面试题,我也整理了一些,可以自己获取。每个人被问的重点都不一样,可以重点准备下自己想被问(熟悉)的框架。

​ 3.2.1 看视频

主要是Java零基础入门,MySQL基础,Java数据结构与算法;大数据的包括Linux(Shell可以跳过)、Hadoop、ZooKeeper、Kafka、Spark、Flink等,主要是项目里面用到什么框架,就重点掌握,其他的了解一些基础就行。

​ 3.2.2 学完java基础后去刷leetcode 看书

并不是必须的,校招主要是基础,如果更深入可以看点书,入门不建议看书。

3.3 常考重点

Java:Java基础知识、集合类、JVM和JUC等。

Hadoop:组成、mapreduce流程、shuffle和高可用等。

Spark:RDD、共享变量、数据倾斜、整体流程、shuffle和容错机制等。

Hive:架构、与数据库的区别、分区、分桶、排序和开窗函数等。

HBase:架构、读写流程、rowkey设置等。

Kafka:架构、消息有序性、spark streaming和kafka连接、消息丢失和重复、生产者和消费者相关问题等。

3.4 项目

一般要两个或更多项目,尽量不选只用到的Hadoop项目,最好选Spark或Flink的项目,如果找数仓岗主要是Hive的项目。我的两个项目都是Spark的,没有学Flink。

3.5 实习

有一定基础就可以去实习了,不要觉得自己不行,毕竟不可能等掌握所有知识再去找工作。实习最大的好处是可以转正,即使没有转正去其他公司面试,问到实习会占用一些时间,问基础的时间会更少。

小讯
上一篇 2024-12-29 20:46
下一篇 2024-12-28 22:32

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/7244.html