谈谈面试大厂中碰到的问题

news2024/11/25 0:40:34

面试IT公司的小技巧

非常不建议在简历上造假,简历上能起到关键作用、有分量的部分,别人都是有办法去核实的,比如教育背景、关键性的证书、奖项等;核实不了的,又基本上也对结果产生不了太大影响,又何必去画蛇添足呢?

简历既要真实,但又不想泯然众人,太平常;在这里为大家准备了一些小技巧,可以用来包装我们的实习/工作经历。

1.适度润色,保证言简意赅,但也要把事说清楚;不要太过冗长,事无巨细,给面试预留提问空间。用客观、专业的口吻去把项目展示出来即可(不要写流水账)

2.突出重点,有的放矢,而非平铺直叙;概述整体经过,同时重点阐述与所投递岗位相关的内容,展示自己有着满足应聘岗位要求的技术能力与专业素养

3.个人介绍部分尽量客观,以第三人的视角去陈述事实即可,无需添加太多主观描述;简历里个个人介绍主要就把个人的技术栈说清楚,适当加一些客观陈述即可,太主观的内容建议少写甚至不写

4.最后,可以把你的简历给身边的朋友、同门 or 老师看看,让他们帮忙过目,务必确保没有错别字和排版问题,简历中出现错字可能会扣不少印象分哦。
在这里插入图片描述

遇到过的面试题

杭州某大厂:

java里,HashMap的底层实现原理

HashMap的底层数据结构是一个数组,数组中的每个元素称为桶(bucket),每个桶实际上是一个链表。当新元素插入到HashMap中时,首先根据键的哈希码来计算出桶的位置,然后将该元素添加到该桶所对应的链表中。

当我们在HashMap中查找元素时,它首先使用键的哈希码来计算出元素所在的桶的位置,然后遍历该桶对应的链表,查找键所对应的值。由于每个桶可能包含多个元素,因此查找的时间复杂度通常为O(1)。

需要注意的是,在添加元素时,如果哈希码相同但键不同,则会在同一桶中创建一个新的链表节点,这被称为哈希冲突。为了减少哈希冲突的数量,HashMap在每个桶上设置了一个阈值,当链表长度超过阈值时,会将链表转换为红黑树,以提高查找效率。

另外,为了保持HashMap的性能,当桶的数量达到一定程度时,HashMap会自动扩容。在扩容过程中,HashMap会重新计算每个元素在新数组中的位置,这个过程是比较耗时的,因此需要在实际使用时留足够的空间以减少扩容的频率。

HashSet如何检查重复

HashSet 通过哈希表实现,使用哈希算法将元素的值转换为哈希码并存储在哈希表中。当要添加一个新元素时,HashSet 会先计算该元素的哈希码,并查找哈希表中是否已经存在相同的哈希码。

如果存在相同的哈希码,HashSet 就会调用该元素的 equals 方法进行比较,如果 equals 方法返回 true,HashSet 就认为该元素已经存在于集合中,不会将其添加到集合中。

如果哈希码没有冲突,或者哈希码冲突但是 equals 方法返回 false,HashSet 就会将元素添加到集合中。

==和equals区别

==运算符比较的是两个对象的引用是否相等,即它们是否指向内存中的同一对象。

equals()方法比较的是两个对象的内容是否相等,即它们是否具有相同的属性值。

equals如何判断两个对象相同

在Java中,对象的 equals() 方法用于判断两个对象是否相等。默认情况下,equals() 方法只是比较两个对象的内存地址是否相同,即比较引用是否相同。如果要判断对象的内容是否相同,则需要重写 equals() 方法。

介绍一下lru算法?

LRU(Least Recently Used)算法是一种常见的缓存淘汰策略,也被称为最近最少使用算法。LRU算法的核心思想是,当缓存空间不足时,优先淘汰最近最少使用的缓存数据。

具体来说,LRU算法维护一个缓存的列表,每次访问一个数据时,就将该数据移到列表的最前端,表示该数据最近被访问过。当需要淘汰数据时,就将列表尾部的数据淘汰,因为这些数据是最近最少被访问的。

LRU算法的优点是能够保证缓存中的数据都是热点数据,也就是最近被访问的数据,因此可以有效地提高缓存命中率。其缺点是实现较为复杂,需要维护一个有序的缓存列表,并且每次访问数据都需要更新列表,对性能有一定的影响。

关于TCP、UDP,你了解多少?

TCP和UDP都是网络通信协议,用于实现不同的传输需求。下面是它们的主要区别:

可靠性:TCP是一种面向连接、可靠的协议,会通过一系列的确认和重传机制保证数据的可靠性,而UDP则是无连接的协议,不保证数据的可靠性。

速度:由于TCP的可靠性机制,它的传输速度相对比较慢,而UDP则相对较快。

连接:TCP是面向连接的协议,通信双方需要先建立连接才能进行通信;而UDP则是无连接的协议,通信双方不需要先建立连接,直接发送数据即可。

应用场景:由于TCP的可靠性和连接性,它适合于一些需要确保数据传输可靠性的场景,如文件传输、邮件发送等;而UDP则适合于实时性要求较高、数据可靠性要求较低的场景,如视频直播、实时语音等。

数据库中索引,簇索引,非簇,唯一,复合,覆盖索引的区别

数据库中索引是一种用于提高查询效率的数据结构。常见的索引类型包括簇索引、非簇索引、唯一索引、复合索引和覆盖索引。

簇索引(Clustered Index):簇索引是按照数据表的主键来创建的索引。簇索引可以加速基于主键的查询,因为它将数据存储在按照主键排序的结构中,使得查找主键时可以直接定位到数据的物理位置。每个表只能创建一个簇索引。

非簇索引(Non-clustered Index):非簇索引不按照主键排序,而是将主键和索引组合在一起存储。当进行非主键查询时,数据库会使用非簇索引进行查找,然后根据查找到的主键再定位到数据的物理位置。每个表可以创建多个非簇索引。

唯一索引(Unique Index):唯一索引是指所有索引键都是唯一的。与非唯一索引相比,唯一索引可以提供更快的查询性能,因为数据库可以直接找到匹配的唯一值,而不必搜索索引的所有值。

复合索引(Composite Index):复合索引是由多个列组合而成的索引。复合索引可以提高多列查询的效率,但也会增加索引的维护成本。

覆盖索引(Covering Index):覆盖索引是指索引包含了所有查询需要的字段,因此查询可以直接使用索引进行返回结果,而不必访问表格。覆盖索引可以提高查询的效率,减少数据库的I/O操作。

mysql索引适用场景

频繁作为查询条件的列。如果一个列经常被作为查询条件,就需要给这个列加上索引,以提高查询的效率。

唯一性太低的列。如果一个列的唯一性太低,比如性别列,只有两个值,那么给这个列加索引的效率并不高,反而会影响写入的性能。

经常需要排序、分组、联合查询的列。如果一个列经常被用来进行排序、分组或联合查询,那么给这个列加上索引可以大幅提高查询效率。

数据重复度较低的列。如果一个列的数据重复度较低,也就是说这个列的不同取值数量很多,那么给这个列加索引可以大幅提高查询效率。

需要注意的是,对于一些比较小的表,即使没有索引,查询速度也会很快。而对于一些非常大的表,即使有索引也可能查询效率很低,这时可能需要对表进行分库分表等操作,以提高查询效率。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/778960.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

USG6000v防火墙的基本使用:制定安全策略让不同安全区域的设备进行访问

目录 一、首先配置环境: 二、实验拓扑及说明 拓扑: PC1和PC2配置ip地址:​编辑​编辑 r4路由器配置ip: 进行防火墙的设置: 1、创建trust1区域和untrust1区域 2、制定防火墙的策略: 3、为防火墙增加可以…

【PostgreSQL内核学习(四)—— 查询规划】

查询规划 查询规划总体处理流程pg_plan_queries函数standard_planner函数subquery_planner函数inheritance_planner函数grouping_planner函数 总结 声明:本文的部分内容参考了他人的文章。在编写过程中,我们尊重他人的知识产权和学术成果,力求…

SpringBoot原理分析 | 任务:异步、邮件、定时

💗wei_shuo的个人主页 💫wei_shuo的学习社区 🌐Hello World ! 任务 异步任务 Java异步指的是在程序执行过程中,某些任务可以在后台进行,而不会阻塞程序的执行。通常情况下,Java异步使用线程池来…

Apikit 自学日记:如何使用定时执行测试用例功能呢?

API自动化测试其实可以设置定时任务,实现项目在无人值守的情况下自动测试并且发送报告给相应的邮箱,监控项目监控情况。 这样一来,就能大大提高工作效率。 目前在 APIkit中这一部分主要功能有: 1.允许对测试任务进行分组&#xf…

Llama 2: Open Foundation and Fine-Tuned Chat Models

文章目录 TL;DRIntroduction背景本文方案 实现方式预训练预训练数据训练细节训练硬件支持预训练碳足迹 微调SFTSFT 训练细节 RLHF人类偏好数据收集奖励模型迭代式微调(RLHF)拒绝采样(Rejection Sampling)PPO多轮一致性的系统消息&…

GAMS---典型优化模型和算法介绍、GAMS安装和介绍、GAMS程序编写、GAMS程序调试、实际应用算例演示与经验分享

优化分析是很多领域中都要面临的一个重要问题,求解优化问题的一般做法是:建立模型、编写算法、求解计算。常见的问题类型有线性规划、非线性规划、混合整数规划、混合整数非线性规划、二次规划等,优化算法包括人工智能算法和内点法等数学类优…

S32K144 GPIO外设分析

1. S32K144 GPIO外设特性 下面的内容来自于S32K用户手册的翻译,或者网上关于S32K系列的一些pdf文件介绍。有些内容可能会出现理解不到位或者翻译错误方面,如果大家有疑问最好可以查阅用户手册。 GPIO和PORT的数量 从用户手册,对于PCR&#x…

python try/except/finally

稍微总结一下&#xff0c;否则总是忘。 x abc def fetcher(obj, index): return obj[index] fetcher(x, 4) 输出&#xff1a; File "test.py", line 6, in <module> fetcher(x, 4) File "test.py", line 4, in fetcher return obj[index] …

实验四 回溯法

实验四 回溯法 售货员问题 1.实验内容 1、理解回溯法的深度优先搜索策略&#xff0c;掌握用回溯法解题的算法框架 2、设计并实现旅行售货员问题问题&#xff0c;掌握回溯算法。 2.实验环境 Java 3.问题描述 旅行售货员问题&#xff1a;设有一个售货员从城市1出发&#…

docker-compose自建RustDesk远程控制服务器

github&#xff1a; rustdesk/rustdesk-server: RustDesk Server Program (github.com) 一、创建 docker-compose.yml 文件&#xff0c;复制以下 docker-compose 配置文件内容到文件 version: 3networks:rustdesk-net:external: falseservices:hbbs:container_name: hbbspor…

开源ThinkMusic搭建音乐网站,并实现公网连接

1、前言 在我们的日常生活中&#xff0c;音乐已经成为不可或缺的要素之一&#xff0c;听几首喜欢的音乐&#xff0c;能让原本糟糕的心情变得好起来。虽然现在使用电脑或移动电子设备听歌都很方便&#xff0c;但难免受到诸多会员或VIP限制&#xff0c;难免让我们回想起音乐网站…

DAY6,C++(将顺序栈,顺序循环队列定义成模板类);

1.将顺序栈定义成模板类&#xff1b;​​​​​​ 顺序栈模板代码--- #include <iostream>using namespace std;template<typename T> class Stack { private:T *data; //指向堆区空间int top; //记录栈顶位置public:Stack(); //无参构造Stack(T size); //有…

子网划分路由网卡安全组

1."IPv4 CIDR" "IPv4 CIDR" 是与互联网协议地址&#xff08;IP address&#xff09;和网络的子网划分有关的概念。 - "IPv4" 代表 "Internet Protocol version 4"&#xff0c;也就是第四版互联网协议&#xff0c;这是互联网上最广泛使…

动态规划入门第4课,经典DP问题3 ----公共最长子序列

练习 第1题 最长公共子串 查看测评数据信息 给出2个小写字母组成的字符串&#xff0c;求它们最长的公共子串的长度是多少&#xff1f; 例如&#xff1a;”abcdefg” 与”xydoeagab”。有最长的公共子串”deg”&#xff0c; 答案为&#xff1a;3。 输入格式 第一行&#xff…

Java并发编程学习笔记(一)线程的入门与创建

一、进程与线程 认识 程序由指令和数据组成&#xff0c;简单来说&#xff0c;进程可以视为程序的一个实例 大部分程序可以同时运行多个实例进程&#xff0c;例如记事本、画图、浏览器等少部分程序只能同时运行一个实例进程&#xff0c;例如QQ音乐、网易云音乐等 一个进程可以…

【密码学】三、DES

DES 1、DES的加密过程2、初始置换3、16轮迭代变换过程3.1 扩展变换/位选择函数E3.2 S盒代换3.3P盒置换 4、初始逆置换5、密钥扩展5.1 选择置换PC_15.2选择置换PC_2 6、DES的解密过程7、多重DES 美国正式公布实施的DES是一个众所周知的分组密码&#xff0c;其 分组长度是64bit&…

Redis 缓存机制介绍

.Redis 缓存 缓存&#xff08;cache&#xff09;&#xff0c;原始意义是指访问速度比一般随机存取存储器&#xff08;RAM&#xff09;快的一种高速存储器&#xff0c;通常它不像系统主存那样使用 DRAM 技术&#xff0c;而使用昂贵但较快速的 SRAM 技术。缓存的设置是所有现代计…

arm点灯

.text .global _start _start: /**********LED1点灯**************/RCC_INIT:LDR R0,0X50000A28LDR R1,[R0]orr R1,R1,#(0x1<<4)orr R1,R1,#(0X1<<5)STR R1,[R0] LED1_INIT:/**/LDR R0,0X50006000LDR R1,[R0]and R1,R1,#(~(0X3<<20))orr R1,R1,#(0x1<<…

windows下载pytorch gpu时遇见的问题以及解决方案

一些很奇怪的问题 使用官方命令下载失效离线下载之后使用pip安装又md报错了 使用官方命令下载失效 这是官方的下载命令&#xff0c;我在运行这个命令的时候咋的都报错&#xff0c;真的无语。 报错信息如下&#xff08;当时没截图&#xff0c;我再创建个新环境运行此命令给大家…

13.2 【Linux】帐号管理

13.2.1 新增与移除使用者&#xff1a; useradd, 相关配置文件, passwd,usermod, userdel 我们登陆系统时会输入&#xff08;1&#xff09;帐号与 &#xff08;2&#xff09;密码&#xff0c; 所以创建一个可用的帐号同样的也需要这两个数据。那帐号可以使用 useradd 来新建使用…