首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
牛客职导官方账号
牛客运营
获赞
1058
粉丝
2019
关注
0
看过 TA
2287
女
清华大学
2019
Java
IP属地:广东
暂未填写个人简介
私信
关注
拉黑
举报
举报
确定要拉黑牛客职导官方账号吗?
发布(1260)
评论
刷题
牛客职导官方账号
关注TA,不错过内容更新
关注
2022-01-21 11:40
已编辑
牛客运营
复盘思路
很多同学只是知道自己没有通过了面试,却不知道自己为什么没有通过,想要搞清楚这些问题只需一次复盘即可。复盘究竟给我们带来了什么? 在你开始复盘前,需要记忆你在面试中被问到了什么问题。 面试问题记忆三方法 1、情景再现法 2、关键点法 3、思维导图法 用思维导图推演出面试的全流程,然后对应环节填充问题。 比如可以按照自我介绍——行为面试/结构化面试——简历深挖——针对性考查(专业问题)——反问这一面试流程进行分析。 当然你也可以根据自己的实际面试情况进行记录分析。记录了面试问题之后就可以开始我们的复盘啦 复盘...
面试必备——技巧及复盘
0
点赞
评论
收藏
分享
2022-01-21 11:33
牛客运营
面试细节
一、优缺点如何回答 1.首先要找准回答的大方向: 1)一般指的是你为人处事上的优缺点,不包括具体技能类的,因此不要回答“我的优点是Excel使用得特别熟练”这种答案。 2)不要答非所问,听清问题:面试官问的是老师同学如何评价你,那就不要回答“我认为我自己...”或者快速转换话题到自己自认为的视角 2.其次可以参考以下回答结构 1)优点:一些职场中需要的的素质(表达能力、性格积极开朗、好学好奇心)/工作中需要的品质(做事效率高、责任心、组织能力)都是不错的选择 STAR法则:情境(situation)、任务(task)、行动(action)、结果(result...
面试必备——技巧及复盘
0
点赞
评论
收藏
分享
2022-01-21 11:33
已编辑
牛客运营
群面讲解
一、群面问题形式 群面题目通常有三种形式,分别是问题解决、现场辩论、价值排序。 1.问题解决 题目形式:假设企业在某场景下,为了解决某难题,需要方案进行解决 考察大家分析问题和解决问题能力、逻辑思维能力、创新能力、思维活跃度、沟通协作能力、语言表达能力。 解题思路: 找到正确的切入点——将需要解决的大问题拆解成多个有思路且容易解决的小问题——用数据和事实分析拆解后的小问题——最后得出结论 2.现场辩论 题目形式:企业将候选...
面试必备——技巧及复盘
0
点赞
评论
收藏
分享
2021-12-20 15:50
牛客运营
6-3 MySQL分库分表与集群管理
1. 为什么需要分库分表? 关系型数据库,表中管理的数据以行记录为单元。当一张表的数据达到上千万条时,随之带来的是更高的磁盘、IO、系统开销,更复杂的索引维护,以及性能上的瓶颈。而一台服务的资源终究是有限的,因此需要对数据库和表进行合理拆分,从而使其更好的提供数据服务。 分库分表的目的在于:减小数据库的负担,提高数据库的效率,缩短查询时间。另外,因为分库分表这种改造是可控的,底层还是基于数据库管理系统,因此整个数据库的运维体系以及相关基础设施都是可重用的。 分库概念:一个系统的多张数据表,存储到多个数据库实例中; 分表概念:对于一张多行(记录)多列(字段)的二维数据表,分两种分表操作: (1...
C++岗面试真题解析
0
点赞
评论
收藏
分享
2021-12-20 15:50
牛客运营
6-2 MySQL索引及其底层结构
1. MySQL索引与底层实现 对于数据量庞大的MySQL库表来说,若没有建立表索引,对表中数据的删改查等操作需要对全表进行扫描,其时间复杂度为O(n),效率降低。 而索引的建立可以有效降低对表元素操作的时间复杂度; 索引类似于字典中的目录,通过字典的拼音目录,我们可以快查询到需要的内容;同样的,索引是对MySQL数据表建立的目录,当对数据进行删改查操作时,通过扫描索引来快速获得目标数据所在的真实映射。 通过学习数据结构我们可以认识到,实现索引与数据间快速映射的结构有多种实现,例如哈希表、二叉搜索树以及多种二叉搜索树的变种。目前,MySQL中实现索引所采用的底层结构为B+树,那么B+树有什么特...
C++岗面试真题解析
0
点赞
评论
收藏
分享
2021-12-20 15:49
牛客运营
6-1 MySQL事务及相关特性
1. 前言 首先非常感谢读到第六章的同学,可能看到这章的目录你会产生一个疑问:前五章内容都是围绕C++程序设计讲述的有关内容,为什么第六章是讲MySQL数据库,而不是操作系统和计算机网络等内容呢? 我认为原因主要有两点: 专刊的篇幅有限,且作者的能力和精力有限。 为什么选择数据库?首先,我认为数据库原理的掌握是后台开发不可或缺的,应该深入学习MySQL数据库的实现原理、工作机制、产品特性并适动手实践。其次,对于操作系统和计算机网络的一些原理和特性介绍的资料较为全面和丰富,且在专刊的前五章中或多或少的有一些涉及和讲解。但我在这里需要提醒大家,操作系统和计算机网络相关的知识掌握也非常...
C++岗面试真题解析
0
点赞
评论
收藏
分享
2021-12-20 15:48
牛客运营
5-3 网络编程—编写服务端与客户端demo
1. 编写简易客户端与服务端程序 1.1 服务端构建流程 如上图所示,使用Socket API建立简易的TCP服务端过程为: 建立一个socket() 绑定接受客户端连接的端口 bind() 监听网络端口 listen() 等待接受客户端连接 accept() 向客户端发送一条数据 send() 接收客户端发送的数据 recv() 关闭socket() 1.2 服务端源码 // // Created by Evila on 2021/6/27. // #include <stdio.h> #include <st...
C++岗面试真题解析
0
点赞
评论
收藏
分享
2021-12-20 15:48
牛客运营
5-2 Socket API与TCP连接/断开过程剖析
网络连接(TCP/UDP)和断开的过程较为复杂,涉及了许多状态,在5-1章中介绍了有关socket函数库后,我们需要思考socket的API函数:socket()、bind()、listen()、connect()、accept()、send()、recv() 和网络连接(TCP/UDP)和断开的过程如何联系起来? #1. Socket编程与TCP3次握手连接过程剖析 先上图:socket api执行各个流程对应的TCP建立连接时3次握手的过程 1.1 进行网络连接前的准备工作——客户端 如图所示,客户端在进行网络连接的准备工作较为简单,只是调用socket()函数生成用于网络连接的套接字。...
C++岗面试真题解析
0
点赞
评论
收藏
分享
2021-12-20 15:47
牛客运营
5-1. C++ Socket基本函数库介绍
本文介绍了Linux C++的socket api一系列方法,以及如何使用Linux C++的socket api搭建较为简易的服务器与客户端;并在5-2篇文章中将socket api的方法与tcp连接的状态进行深入剖析;最后在5-3章中继续深入剖析网络编程的技巧、方法与模型。 1. Socket 1.1 Socket基本概念 Socket,又叫套接字,是网络编程中的一个抽象概念,可简单的理解为socket标识一个网络连接。 互联网中的两个进程想要建立TCP/UDP连接,需要双方的ip地址+端口号,网络协议栈中由网络层提供的ip地址用于标识主机(网卡),传输层协议提供的端口号用于标识进程;有了...
C++岗面试真题解析
0
点赞
评论
收藏
分享
2021-12-20 15:46
牛客运营
4-3 Linux C++编译、链接与调试
1.编译与链接过程 在Linux系统使用gcc/g++编译C++程序,其过程可分为4个阶段: 1.1 预处理 在预处理阶段做三件事:、 1.删除注释; 2.处理源文件中的#ifdef、#include和#define预处理命令; 3.将包含的头文件展开; 可使用 gcc -E 生成预处理后的中间文件*.i。 例如,有如下代码: #include <stdio.h> #define MYNAME "Evila" int main() { // print Hello Evila! printf("Hello %s! \n", MYNAME); ...
C++岗面试真题解析
0
点赞
评论
收藏
分享
2021-12-20 15:46
牛客运营
4-2 内存池的设计与实现
#1.内存碎片 在C++内存管理一章中介绍到,内存分区中堆区由C++进程主动申请和释放,堆内存的管理具有内存申请大小任意、即时分配和释放的特点。因此,频繁的堆内存申请与释放会产生空闲的内存块以小且不连续方式出现在任意位置,这些不可用的空闲内存被称作内存碎片。 1.1 内碎片 操作系统的内存分配方式一般起始于可被4、8或16整除的内存位置(视处理器体系结构而定),内存分配算法仅能把预定大小的内存块分配。因此当某个程序申请一个23字节的内存块时,因为没有刚刚好23字节的内存块,所以可能会获得32字节、64字节等更大一点的字节空间。将程序申请所需内存大小增加到相对内存块而产生的多余空间就叫内碎片。 ...
C++岗面试真题解析
0
点赞
评论
收藏
分享
2021-12-20 15:45
牛客运营
4-1 C++内存管理与智能指针
1.C++内存管理 这是一个老生常谈的话题,内存管理是C++程序员应学习的基础能力,同时也是校招、社招面试中让候选人头疼的问题。掌握内存管理的C++程序员可以从中获得了更好的性能,更大的自由;但稍有不慎则会内存泄漏、core dump。因此,本篇文章从介绍C++内存管理入手,介绍C++程序员应该掌握的内存管理基础知识,进一步的介绍智能指针的概念以及shared_ptr的使用方法。 1.1 C++内存分配(内存分区) 如图所示:C++进程的内存空间被分为: 栈:用于维护函数调用的上下文空间,包括:程序临时创建的局部变量,也就是“{}”中定义的变量(不包括static声明的变量); 函数调...
臻惜:
shared_ptr的实现里面,拷贝构造函数没有对原对象是否已经初始化Counter进行检查,还是会造成内存泄漏。建议当个参考,面试按这个写会很惨。
C++岗面试真题解析
0
点赞
评论
收藏
分享
2021-12-20 15:44
牛客运营
3-3 STL容器剖析(set & map)
1. 前言 本文介绍set、map与unordered_set、unordered_map这四个容器,此类容器为关联式容器,主要是set(集合)和map(映射表)两大类。所谓关联式容器,即每笔数据都有一个键值(key)和一个实值(value),当元素被插入关联式容器中时,容器内部结构便会以键值大小,按照某中特定规则将元素放置在适当位置。关联式容器不存在头尾概念,因此也不会有push_back()、pop_front()等操作。 2. RB-tree 关联式容器的内部结构一般是一个balanced binary tree(平衡二叉树),以便获得良好的搜寻效率。RB-tree(红黑树)也是一种特殊...
C++岗面试真题解析
0
点赞
评论
收藏
分享
2021-12-20 15:44
牛客运营
3-2 STL容器剖析(queue & stack)
1. deque——双向队列容器 1.deque的内存模型 如图1-1所示,deque的内存模型与vector极为相似,是一种双向开口的连续线性容器。由于deque可在头尾两端进行元素的插入和删除操作,因此被称为双向队列。vector虽然也可在头部进行此操作,但需要将所有元素向后移动,因此效率很差;而deque可在常数时间复杂度在头部进行元素的插入和删除。 图1-1 deque的前后插入图解 stack和queue是在deque的基础上进行了包装,实际调用的也是deque的函数接口。因此,首先对deque容器进行深入的剖析。 1.2 deque中控器 不难发现,deque与vector最本质...
C++岗面试真题解析
0
点赞
评论
收藏
分享
2021-12-20 15:43
牛客运营
3-1 STL容器剖析(vector & list)
1.前言 C++标准模板库(standard template library, STL)不仅是一个可复用组件库,而且是一个包罗算法与数据结构的模板框架。 STL已完全被内置到支持C++的编译器中,无需额外安装, STL包括六大组件,可以互相组合套用: 容器(containers):各种数据结构的模板类,如vector,list,deque,set,map等用来存放数据。 算法(algorithm):sort,search,copy,erase等模板函数,大部分算法都包含在头文件<algorithm>中,少部分位于头文件 <numeric> 中。 ...
C++岗面试真题解析
0
点赞
评论
收藏
分享
1
7
8
9
10
11
84
关注他的用户也关注了:
牛客网
牛客企业服务