自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(183)
  • 收藏
  • 关注

原创 从企业开发流程到使用场景解析 git vs svn

git和svn都是一种代码托管方式:通过将本地代码提交至远程仓库,来实现企业级程序开发。虽然git和svn都能实现代码的版本控制,但是二者的工作方式以及对应的开发流程是截然不同的,根本原因在于**git是分布式版本控制,而svn是集中式版本控制**

2024-04-07 12:08:52 707

原创 【Groovy系列 一】Groovy数据类型(字符串、数值型、集合、数组、Map)

在这里记录了Groovy的基础简介,本系列开始对Groovy的进一步学习。

2024-04-01 10:05:06 467

原创 【Redis 二】Redis客户端(Jedis、SpringDataRedis、RedisTemplate)

RedisTemplate可以接受任意的Object作为键、值写入redis,但是会在写入前将Object序列化为字节形式,默认采用JDK序列化,可读性差且内存占用较大,可以通过设置redis序列化器的方式来避免使用JDK序列化。在Spring中可以通过注入RedisTemplate的方式(底层连接可以选择jedis、lettuce)来使用redis,需要在配置文件中配置redis信息。jedis所使用的方法名多数与redis调用保持一致,redisTemplate则是对redis调用进行了封装。

2024-04-01 10:03:31 647

原创 【Redis 一】Redis数据结构(String/Hash/List/Set/Sorted Set)、常用redis终端命令

是一个可排序的set集合,功能上上与Java的TreeSet类似,但是底层数据结构是不一样的。Sorted Set中每一个元素都带有一个score属性,可以基于score对元素排序,底层的实现是一个跳表(skipList)加hash表。也叫散列,value是一个无序列表,类似于java中的HashMap<fileld, value>类似于java中的LinkedList,可以看做一个双向链表结构,支持正向检索也支持反向检索。注意:所有的排名默认都是升序,如果要降序则在命令的z后面加rev即可。

2024-04-01 10:02:08 500

原创 【Gradle 三】Gradle项目周期、配置文件

1.Gradle项目生命周期:初始化加载初始化脚本 init.gradle(一般是某些全局配置)加载项目settings.gradle文件配置找到初始化阶段中加载的项目和各个子项目(如有)的构建脚本build.gradle会先加载一级项目,再加载二级项目,创建对应的task执行执行配置阶段生成的task2.settings文件:作用:在项目初始化阶段,确定引入哪些工程,为构建项目工程树做准备工程树:类似于maven中的project和module内容:定义了当

2024-04-01 09:59:08 217

原创 【Gradle 二】Groovy简介(Gradle和Groovy的关系、groovy基础语法)

groovy是一种java脚本,运行在JVM上。既可以面向对象编程,又可以作为脚本。groovy和java的区别是:完成同样的任务所需要的groovy代码比java代码少。

2024-04-01 09:57:35 899

原创 【Gradle 一】Gradle入门简介(Maven/Gradle比较、Gradle目录结构&常用命令)

项目中的gradlew、gradlew.bat脚本用的就是wrapper中规定的gradle版本(在命令行中用gradle命令调用的是本地安装的gradle、gradlew调用的是wrapper中的gradle)gradle底层也是从maven仓库中下载jar包,有一些maven仓库在国外下载缓慢,可以通过启用init.gradle的方式,设置maven下载地址为国内镜像源。以上gradle命令均需要在含有build.gradle的目录执行。存储项目wrapper对应的gradle配置。

2024-04-01 08:47:41 432

原创 MySQL体系结构和存储引擎【InnoDB特性】【4种隔离级别】【聚集索引】

文件的集合。

2023-08-08 23:17:24 253

原创 【for update】解析 【线程安全】【分布式锁】

for update是一种DML操作级别的行级锁。在结合事务的场景中,事务A对一行数据使用select … for update加锁,其他事务只能查询但不能更新被加锁的数据行,而事务A既可以查询又可以更新该行数据。事务A提交后,其他事务才可以更新该行。

2023-03-12 21:11:34 1077 1

原创 《MySQL是怎样运行的》【第19章 redo日志】笔记--【redo日志特性、分类、写入、刷盘时间、日志文件组】【Mini-Transaction(MTR)】

第19章 redo日志前导知识增删改查的本质都是访问页面(读写、创建新页面等)如果仅仅修改某个页面的一个字节,也需要将一个完整的页面从内存刷到磁盘中,这种情况刷新一个完整的数据页太浪费了一个事务修改的多个页面可能并不相邻。导致随机I/O增多what没有必要在每次提交事务的时候就把该事务对应的修改页面全部刷新到磁盘,只要把修改记录下来就好依靠redo log,系统在崩溃重启后按照里面的内容重新更新数据页就能实现事务的持久性redo日志本质上是在记录事务对数据库进行了

2021-12-03 22:52:11 265

原创 《MySQL是怎样运行的》【第18章 事务】笔记

第18章 事务四大特性原子性(Atomicity)一致性(Consistency)隔离性(Isolation)持久性(Durability)what需要保证ACID特性的一个或多个数据库操作称为事务(transaction)事务的状态活动(active)部分提交(partially committed)失败(failed)中止(aborted)提交(committed)流程开启事务begin;start transaction;提交事务commit;不显

2021-12-01 23:10:09 293

原创 《MySQL是怎样运行的》【第16章 optimizer trace】【第17章 缓冲池(Buffer Pool)】笔记

第16章 + 第17章optimizer tracewhat可以让用户查看优化器为指定语句生成执行计划的过程步骤打开optimizer trace功能输入查询语句从OPTIMIZER_TRACE表中查看上一个查询的优化过程关闭optimizer trace功能缓冲池(Buffer Pool)前导知识InnoDB处理客户端的请求时,如果需要访问某个页的数据,会将完整的页中的数据全部加载到内存中将整个页加载到内存中就可以进行读写访问了,而且读写访问之后不着急释放该页对应的内存,

2021-11-30 22:27:45 859

原创 《MySQL是怎样运行的》【第14章 查询优化】笔记----【查询条件化简】【外连接消除】【子查询简介、分类、注意事项】【子查询优化】【子查询的执行方式】

第14章 查询优化前导知识what查询优化就是MySQl会将程序员编写的一些比较耗费性能的语句进行查询重写条件化简移除不必要的括号常量传递某个表达式是某个列和某个常量的等值匹配,会直接用常量替换列名移除没用的条件比如永远为true或false表达式计算表达式只包含常量的话,值会被计算出来如果某个列在函数中或者以运算形式出现,优化器不会进行化简having和where子句的合并查询语句中没有sum、max这样的聚集函数以及group子句的话,优化器会将havin

2021-11-26 22:29:23 629 1

原创 《MySQL是怎样运行的》【第13章 InnoDB怎样收集统计数据】笔记----【表/索引的统计数据】【InnoDB统计数据的存储】

第13章 InnoDB怎样收集统计数据前导知识表的统计数据show table status;索引的统计数据show index;统计数据的存储永久性存储存储于磁盘上,服务器重启后数据仍然存在实际存储在磁盘内的两个表中innodb_index_statsinnodb_table_stats非永久性存储存储于内存中,服务器重启时,重新收集统计数据...

2021-11-26 22:27:19 507

原创 《MySQL是怎样运行的》【第12章 成本优化】笔记----【单表查询的成本】【执行计划的确定】【连接查询的成本】

第12章 成本优化成本是what一条查询语句在MySQL中的执行成本由 I/O成本、CPU成本 组成I/O成本:InnoDB、MyISAM存储引擎将数据和索引存储在磁盘,当查询记录时,需要将数据记载到内存上。从磁盘加载到内存过程中损耗的时间就是I/O成本CPU成本:读取记录、检测记录是否符合搜索条件、对结果排序等操作耗费的时间单表查询的成本查询之前MySQL的优化器会找出所有可以用来执行该语句的方案,找到成本最低的方案作为执行计划执行计划的确定1、根据搜索条件,找到所

2021-11-24 21:08:22 515

原创 【Effective C++ 条款41-45 笔记】【template隐式接口和编译期多态】【typename的双重意义】【处理模板化基类中的名称】【使用成员函数模板接受所有兼容类型】

条款41:template的隐式接口和编译期多态对于class来说是:显式接口、运行期多态显式接口:由函数签名式(函数名称、参数类型、返回值类型)组成运行期多态:根据运行期对象的实际类型决定调用哪个函数对于template来说就是:隐式接口、编译期多态隐式接口:不基于函数签名式,而是由有效表达式组成编译期多态:以不同的template参数具现化函数模板会导致调用不一样的函数编译期多态与运行期多态的区别,类似于:”哪一个重载函数该被调用(发生在编译期)“和”哪一个virtual函

2021-11-24 15:42:42 672

原创 《MySQL是怎样运行的》【第11章 表连接的原理】笔记----【数据库表连接过程】【SQL内/外连接】【where和on的区别】【使用索引加快连接速度】【基于块的嵌套循环连接】

第11章 表连接的原理前导知识连接:将各个表中的记录都取出来进行依次匹配,将匹配后的结果发给客户端笛卡尔积:连接查询的结果中包含一个表的每一条记录与另一个表中每一条记录的组合,这样的查询结果就是笛卡尔积比如表a有5条记录;表b有6条记录;a和b的笛卡尔积就是30连接过程1、确定第一个需要查询的表,此表为驱动表2、从驱动表中取每一条符合搜索条件的记录,到接下来的表中查找匹配的记录;驱动表之后的那个表就叫被驱动表只需要访问驱动表一次,可能会多次访问被驱动表每获得一条满足条件的驱动表记录,马上

2021-11-23 22:11:34 397

原创 【Effective C++ 条款34-40 笔记】【区分接口继承和实现继承】【绝不重新定义继承而来的non-virtual函数和继承而来的缺省参数值】【明智使用private继承和多重继承】】

条款34:区分接口继承和实现继承public继承可分为两种:函数接口继承函数实现继承首先要明白纯虚函数:带有纯虚函数的类是抽象类,抽象类不能实例化对象,抽象类的子类必须重写该纯虚函数才能实例化对象,否则子类也将是个抽象类成员函数的接口总会被子类继承。声明一个纯虚函数是为了让子类只继承函数接口声明一个普通的虚函数,是为了让子类继承该函数的接口和缺省实现声明一个non-virtual函数,是为了让子类继承这一函数接口以及父类对该函数的实现条款36:绝不重新定义继承而来的non-virt

2021-11-23 16:18:22 237

原创 《MySQL是怎样运行的》【第10章 单表访问方法】笔记

第10章 单表访问方法前导知识单表查询:from子句后只有一个表访问方法:MySQL执行查询语句的方式访问方法的分类constwhat:通过主键或位移耳机索引列来定位一条记录约束:只能在主键列或唯一二级索引列与一个常数进行等值比较时才有效,必须要保证最多只有一条记录符合搜索条件refwhat:通过二级索引列与常数进行等值比较,形成的扫描区间为单点对于普通的二级索引列,使用ref可能获取到多条连续的二级索引记录每获取到一条二级索引记录,会立刻进行回表ref_or_null

2021-11-21 22:11:16 503

原创 【Effective C++ 条款29-33 笔记】【为异常安全而努力】【透彻了解inline】【确定public继承塑造出is-a关系】【避免遮掩继承来的名称】

条款29:为异常安全而努力当异常被抛出时,具有异常安全的函数会:不泄露资源不丢失数据copy and swap(CAS):为打算修改的对象创建一份副本,在副本上进行一系列修改。在修改副本的过程中抛出任何异常,原对象不受影响。当所有的改变都成功后,将修改之后的副本和原对象在一个不抛出异常的操作中置换条款30:透彻了解inlineinline函数能够避免函数调用的开销,还能够让编译器对inline函数进行优化这是因为inline函数的机制是:在编译期以函数本体替换对inline函数的每一个调

2021-11-21 20:50:50 677

原创 【Effective C++ 条款24-28 笔记】【所有参数都需要类型转换,请采用non-member函数】【尽可能延后变量定义式的出现时间】【尽量少做转型动作】...

条款24:若所有参数都需要类型转换,请采用non-member函数比如一个重载乘号运算符的函数,如果operator*是member函数,那么该函数值接收一个形参,作为二元操作符,另一个参数就是对象自己如果operator*是一个non-member函数,那么必须在参数列表中必须写明两个形参比如自定义一个有理数类,在该类中我们重载operator*运算符,使该类的对象能够与普通的int变量进行计算class Rational {public: ... const Rational

2021-11-20 21:19:47 265

原创 Git——《百度技术培训中心》--《Devops-Git》课程的笔记

Git本文是对《百度技术培训中心》–《Devops-Git》课程的笔记网址:《百度技术培训中心》–《Devops-Git》上一张思维导图:安装Linux安装sudo apt-get install git配置Git提交代码者信息:git config --global user.name “此处填写用户名”git config --global user.email “此处填写邮箱”创建本地版本库1、mkdir dirGit(本地版本库名字)2、cd dirGit3、

2021-11-20 20:01:18 785

原创 【Effective C++ 条款20-23 笔记】【以传const引用替换传值】【必须返回对象时,别妄想返回其reference】【将成员变量声明为private】

条款20:以pass-by-reference-to-const替换pass-by-value意思是:参数传递最好用传const引用代替普通的传值为什么呢?传引用可以直接将实参本体传递进函数,而不用调用各种构造函数以及析构函数(完成副本的创建及销毁);注意:效率的提高并不只是减少了一次副本对象的拷贝构造以及析构,副本内可能含有多个同样需要拷贝构造的对象也需要创建并销毁传const引用可以告诉函数,以只读的形式对待实参在形参是父类对象,实参是子类对象的时候,传值的方式会直接将实参进行对象切割,构造

2021-11-19 21:35:26 615

原创 《MySQL是怎样运行的》【第9章 InnoDB的表空间】笔记

第9章 InnoDB的表空间上一张思维导图前导知识系统表空间:对应一个文件系统中一个或多个实际文件独立表空间:对应文件系统中名为“表名.ibd”的文件一个表空间最多可以拥有2^32个页独立表空间区(extent)对16KB的页来说,物理位置上连续的64个页组成一个区,即区的大小默认1MB当表的数据量很大时,为某个索引分配空间不以页为单位,而是以区为单位区的分类FREE:空闲的区FREE_FRAG:有剩余空闲页面的碎片区FULL_FRAG:没有剩余空闲页面的碎片区F

2021-11-19 19:55:14 1074

原创 《MySQL是怎样运行的》【第8章 MySQL的数据目录】读书笔记

第8章 MySQL的数据目录上一张思维导图前导知识1、存储引擎InnoDB、MyISAM将数据存储在磁盘2、操作系统通过文件系统管理磁盘因此,存储引擎是将数据存储在文件系统上MySQL目录安装目录:存储控制客户端和服务端的程序文件数据目录:服务器启动时在该目录下加载数据,之后在运行过程中将产生的数据存在该目录下的文件中数据目录对应系统变量datadirmysql查看数据目录:show variables like 'datadir;数据库在文件系统中的表示每个数据库对应数据

2021-11-18 21:45:40 599

原创 【Effective C++ 条款13-17 笔记】【以对象管理资源】【在资源管理类中小心copying行为】【在资源管理类中提供对原始资源的访问】【成对使用mew和delete时要采取相同形式】..

条款13:以对象管理资源动态分配对象时,对象存储在heap上,若不及时或者忘了delete对象指针,会造成内存泄露即便最后没有忘记delete对象指针,在函数运行到delete语句之前,可能会遇到以下状况使得delete语句不被执行:new和delete之间有一个过早的returnnew和delete位于某个循环内,该循环由于某个continue、break或者goto过早退出delete语句之前抛出异常,直接跳转到异常处理函数为了防止资源泄露,主要有两点要注意:获得资源后立即放进资源的

2021-11-18 20:36:35 277

原创 【Effective C++ 条款08-12 笔记】【别让异常逃离析构函数】【不在构造和析构过程中调用virtual函数】【令operator=返回一个绑定到*this的引用】...

条款08:别让异常逃离析构函数C++并不禁止析构函数抛出异常,但是不建议这样做有两个异常存在的情况下,程序不是结束执行就是导致不明确的行为如果无法避免析构函数产生异常的可能性,有两种办法:1、若析构函数爬出异常,就调用abort结束程序A::~A() { try {a.func();} catch(...) { //记录调用a.func()过程中出现异常 abort(); }}2、吞下异常,当做什么也没发生过A::~A()

2021-11-17 21:06:24 371

原创 【Effective C++ 条款05-07 笔记】【C++默默编写并调用哪些函数】【禁止编译器自动生成函数】【什么时候基类要带虚析构函数】

条款05:了解C++默默编写并调用哪些函数一个空类,编译器会自动声明:默认构造函数(对于非空类:只在没有自定义任何构造函数的时候,才会由编译器补充)拷贝构造函数拷贝赋值运算符析构函数(非虚函数)注意:当一个class内含有reference/const成员时,编译器不提供拷贝赋值运算符的补充,只能由程序员自己编写这是因为C++不允许改变reference成员的指向,也不允许更改const成员条款06:若不想使用编译器自动生成的函数,就该明确拒绝问题:比如说想要禁止一个类对象的拷贝

2021-11-16 20:36:39 369

原创 《MySQL是怎样运行的》【第5章 InnoDB数据页结构 】 【第6章 B+树索引】笔记

MySQL是怎样运行的上一个思维导图第5章 InnoDB数据页结构数据页结构快览页是什么:InnoDB管理存储空间的基本单位数据页是什么:索引页,就是存放记录的页页大小:16KB页类型:根据存储内容而定,如inode、undo log信息;最关心的是存放记录(数据)的页页与记录:一个页中可存放多条记录,所有的记录存在页的User Record区页中存储的记录被删除的记录并不会马上在页中清除,而是组成一个垃圾链表,置入可重用空间多条记录在一个页中紧密排列,成为一个堆heap_n

2021-11-15 21:44:58 1014

原创 【Effective C++ 条款03 笔记】尽可能使用const

条款03:尽可能使用const一、顶层const和底层const区分一下:int a = 1;const int* pa = a;//底层const,a的值不能变int b = 2;int* const pb = b;//顶层const,pb的值不能变,即不能更改pb的指向注意除了指针这种复合类型,其余基本类型的变量设置const全部为顶层const二、const作用于迭代器声明一个const迭代器与顶层指针类似:const vector<int>::iterator it

2021-11-12 20:37:47 547

原创 【Effective C++ 条款02 笔记】尽量以const,enum,inline替换#define

条款02:尽量以const,enum,inline替换#define部分来源:https://blog.csdn.net/weixin_37992828/article/details/81117036关于const在使用宏定义的时候,比如#define pi 3.14159宏pi根本没有进入记号表,当使用这个宏但是编译错误时,只会提示是3.14159出现了错误。如果这一行宏定义出现在不是程序员自己写的头文件时,也就查不到这个3.14159到底是出现在哪里了。因此,提倡使用常量来替换宏定义

2021-11-08 20:25:10 152

原创 【面经专栏】测试用例的设计方法

测试用例常见的设计方法有:等价类划分法、边界值分析法、错误推测法、判定表法、正交实验法。一、等价类划分法顾名思义,顾名思义,等价类划分,就是将测试的范围划分成几个互不相交的子集,他们的并集是全集,从每个子集选出若干个有代表性的值作为测试用例。  例如,我们要测试一个用户名是否合法,用户名的定义为:8位数字组成的字符。  我们可以先划分子集:空用户名,1-7位数字,8位数字,9位或以上数字,非数字。  然后从每个子集选出若干个有代表性的值:  空用户名:“” (无效等价类实例,指对于软件规格说明而

2021-10-18 14:03:16 552

原创 【面经专栏】自己的整理的测试面经

单元测试、集成测试、系统测试、验收测试、回归测试(alpha、beta)所有测试环节中,最重要的是哪一步集成测试和系统测试的区别,以及他们的应用场景测试开发需要什么知识黑盒、白盒测试方法手动测试、自动化测试的优缺点软件测试的核心竞争力测试和开发怎样结合(V模型、W模型)单元测试的可行性自动化测试的意义,需要做什么测试的相关流程怎样写测试用例测试项目的具体工作怎样评测bug(优先级、严重等级)测试用例的常见边界设计测试用例的方法app性能测试的指标app测试的工具b.

2021-10-18 14:02:07 182

原创 【面试专栏】自己整理的WebServer项目问题

1.怎样应对服务器的大流量、高并发客户端:尽量减少请求数量:依靠客户端自身的缓存或处理能力尽量减少对服务端资源的不必要耗费:重复使用某些资源,如连接池服务端:增加资源供给:更大的网络带宽,使用更高配置的服务器请求分流:使用集群,分布式的系统架构应用优化:使用更高效的编程语言,优化处理业务逻辑的算法2.线程池与多线程的设计思路设计一个任务队列,作为临界资源初始化n个线程,开始运行,对任务队列加锁取拿取任务执行当任务队列为空时,所有子线程(工作线程)阻塞(pthread_

2021-10-18 13:59:57 7045

原创 【面经专栏】自己整理的数据结构与算法面经

1、排序算法的稳定性堆排序、快速排序是不稳定的排序算法,而冒泡排序、插入排序、归并排序是稳定的排序算法。​ 【总结排序算法实现与稳定性】https://www.cnblogs.com/lqminn/p/3642027.html​ 假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序,这些记录的相对次序保持不变,即在原 序列中,ri=rj,且ri在rj之前,而在排序后的序列中,ri仍在rj之前,则称这种排序算法是稳定的;否则称为不稳定的。2、红黑树和AVL树的区别AVL树是带有平衡条

2021-10-18 13:58:39 979

原创 【面经专栏】自己的整理的数据库面经

1、关系型数据库和非关系型数据库1.mysql和redis的数据库类型mysql是关系型数据库,主要用于存放持久化数据,将数据存储在硬盘中,读取速度较慢。redis是NOSQL,即非关系型数据库,也是缓存数据库,即将数据存储在缓存中,缓存的读取速度快,能够大大的提高运行效率,但是保存时间有限2.mysql的运行机制mysql作为持久化存储的关系型数据库,相对薄弱的地方在于每次请求访问数据库时,都存在着I/O操作,如果反复频繁的访问数据库。第一:会在反复链接数据库上花费大量时间,从而导致运行效率过慢

2021-10-18 13:57:00 1643

原创 【面经专栏】自己整理的操作系统面经

1、需要线程频繁加锁解锁的场景,怎么优化CPU性能临界区处理很快,也许用 spin lock(自旋锁) 或者 lock-free 算法,临界区处理很慢, mutex 更合适lock-free:是一种编程思想,指的是使用多线程的条件下,尽量少使用锁以降低线程之间互相阻塞的机会;在一系列访问 Lock-Free 操作的线程中,如果某一个线程被挂起,那么其绝对不会阻止其他线程继续运行不要使用自旋锁,因为线程得不到锁的时候会一直在循环等待,不会进入休眠使用互斥锁,结合条件变量,引入线程的等待与通知机

2021-10-18 13:55:37 2153

原创 【面经专栏】独家整理【计算机网络面经】

1、地址总线、数据总线、控制总线的作用数据总线是CPU与内存或其他器件之间的数据传送的通道。数据总线的宽度决定了CPU和外界的数据传送速度。每条传输线一次只能传输1位二进制数据。eg: 8根数据线一次可传送一个8位二进制数据(即一个字节)。数据总线是数据线数量之和。地址总线CPU是通过地址总线来指定存储单元的。地址总线决定了cpu所能访问的最大内存空间的大小。eg: 10根地址线能访问的最大的内存为1024位二进制数据(1024个内存单元)(1B)地址总线是地址线数量之和。控制总

2021-10-18 13:53:09 1602

原创 【面经专栏】独家整理【C++】面经

C++1、动态库的查找顺序ELF文件的DT_RPATH段环境变量LD_LIBRARY_PATH库高速缓存/etc/ld.so.cache文件列表默认路径/lib /usr/lib2、虚继承,多重继承中派生类对象内有谁3、RTTI,typeid是怎么知道指向对象的类型的​ typeid函数的主要作用就是让用户知道当前的变量是什么类型的,比如使用typeid(a).name()就能知道变量a是什么类型的。typeid()函数的返回 类型为type_info类型的引用​ 运行时的多态是通

2021-10-18 13:50:40 1986

原创 【面经专栏】成建制面经大杂烩【C++面经】【操作系统面经】【计算机网络面经】【数据库MySQL/Redis面经】

2021年秋季招聘接近尾声,也是时候整理一些自己的面试问题总结了。在7月中旬到9月末开始,陆续整理了以下C++后端岗位的面试问题。关于来源:标注【牛客】的部分题目来自牛客上的面试题目,安利一下牛客的秋招集训营,很全面很高效标注【拓跋阿秀】的问题来自同名公众号,这是阿秀大佬整理的问题标注【Guide】的问题来自javaguide,这也是大佬整理的问题注意:本博客仅涉及面试问题的题目,对于题目的具体解答请去上面提到的源头查看,也可自行百度解决【牛客】C++语言基础1.1.1 C++语言的

2021-10-18 13:42:35 1265

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除