• Stars
    star
    1,321
  • Rank 34,334 (Top 0.7 %)
  • Language
  • Created almost 4 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

【C++面试&C++学习指南】 这里整理了C++后端研发工程师面试和工作必备的知识点 。

如下是C++后台研发技术路线以及知识点,这里有很多细节,还需要不断完善。 欢迎大家通过【公众号】 或者加我【微信】 与我交流,一起成长一起进步!

以下没有连接的内容就是还没有写,笔者正在拼命赶稿ing....

C++primer B站视频讲解

(玩命更新ing...)

编程语言C++

数据结构与算法

设计模式

  • C++设计模式
  • C++单例模式
  • 用C++设计一个不能被继承的类
  • 如何定义一个只能在堆上定义对象的类?栈上呢
  • 重类构造和析构的顺序

操作系统

  • linux的内存管理机制,内存寻址方式,什么叫虚拟内存,内存调页算法,任务调度算法
  • 锁:互斥锁,乐观锁,悲观锁
    • 死锁必要条件及避免算法
  • 动态链接和静态链接的区别
  • 常见的信号、系统如何将一个信号通知到进程
  • linux系统的各类同步机制、linux系统的各类异步机制
  • 如何实现守护进程
  • 标准库函数和系统调用的区别

linux 服务器

  • 32位系统一个进程最多有多少堆内存
  • 五种I/O 模式:阻塞I/O,非阻塞 I/O,I/O 多路复用,信号驱动 I/O,异步 I/O
    • select 模型和 poll 模型,epoll模型
    • socket服务端的实现,select和epoll的区别(必问)
    • epoll哪些触发模式,有啥区别?
  • 用户态和内核态的区别
  • linux文件系统:inode,inode存储了哪些东西,目录名,文件名存在哪里

计算机网络

  • TCP和UDP区别
  • TCP和UDP头部字节定义
  • TCP和UDP三次握手和四次挥手状态及消息类型
  • time_wait,close_wait状态产生原因,keepalive
  • 什么是滑动窗口,超时重传
  • 列举你所知道的tcp选项
  • connect会阻塞检测及防止,socket什么情况下可读?
  • socket什么情况下可读?
  • connect会阻塞,怎么解决?(必考必问)
  • keepalive是什么?如何使用?
  • 长连接和短连接
  • UDP中使用connect的好处
  • DNS和HTTP协议,HTTP请求方式

数据库

  • 谈谈数据库中索引的理解,索引和主键区别
  • 现在普通关系数据库用得数据结构是什么类型的数据结构
  • 索引的优点和缺点
  • 系型数据库和非关系数据库的特点
  • 乐观锁与悲观锁的区别
  • 数据库范式:第一第二第三范式
  • 数据库日志类型作用
  • B TREE 和B+TREE的区别
  • union和join

海量数据处理

  • bitmap
  • Map-Reduce原理
  • BloomFilter原理
  • Trie树原理
  • LSM树原理

linux下操作命令以及工具

程序员求职

程序员的工具

工欲善其事必先利其器

适合新手的开源项目

关于作者

大家好,我是程序员Carl,哈工大师兄,ACM 校赛、黑龙江省赛、东北四省赛金牌、亚洲区域赛铜牌获得者,先后在腾讯和百度从事后端技术研发,CSDN博客专家。对算法和C++后端技术有一定的见解,利用工作之余重新刷leetcode。

加我的微信,备注:「个人简单介绍」+「组队刷题」, 拉你进刷题群,每天一道经典题目分析,而且题目不是孤立的,每一道题目之间都是有关系的,都是由浅入深一脉相承的,所以学习效果最好是每篇连续着看,也许之前你会某些知识点,但是一直没有把知识点串起来,这里每天一篇文章就会帮你把知识点串起来。

我的公众号

更多精彩文章持续更新,微信搜索:「代码随想录」第一时间围观,关注后回复:「666」可以获得所有算法专题原创PDF。

每天8:35准时为你推送一篇经典面试题目,帮你梳理算法知识体系,轻松学习算法!,并且公众号里有大量学习资源,也有我自己的学习心得和方法总结,更有上万录友们在这里打卡学习,来看看就你知道了,一定会发现相见恨晚!

More Repositories

1

leetcode-master

《代码随想录》LeetCode 刷题攻略:200道经典题目刷题顺序,共60w字的详细图解,视频难点剖析,50余张思维导图,支持C++,Java,Python,Go,JavaScript等多语言版本,从此算法学习不再迷茫!🔥🔥 来看看,你会发现相见恨晚!🚀
Shell
38,350
star
2

Skiplist-CPP

A tiny KV storage based on skiplist written in C++ language| 使用C++开发,基于跳表实现的轻量级键值数据库🔥🔥 🚀
C++
1,424
star
3

PowerVim

Make your vim more power and much easer.
Vim Script
1,116
star
4

Markdown-Resume-Template

BAT程序员自己的简历模板分享出来了 。技术简历追求简单明了,避免没有必要的花哨修饰,大家可以fork到自己仓库中,基于这个模板进行修改。
684
star
5

NoSQLAttack

NoSQLAttack is an open source Python tool to automate exploit MongoDB server IP on Internet and disclose the database data by MongoDB default configuration weaknesses and injection attacks.
Python
286
star
6

DesignPattern

This repository is built for design pattern in C++
C++
187
star
7

youngyangyang04

147
star
8

fileHttpServer

A simple file HTTP server, written in golang, that include get, put, post method to upload files
Go
130
star
9

Gomoku

五子棋对战游戏,支持多个client同时在线对战,由于游戏性质,使用典型的同步阻塞IO模型,多进程提供服务
C
74
star
10

NoSQLInjectionAttackDemo

NoSQLInjectionAttackDemo is website demo for test NoSQL Injection. There are two website demos in this project and all databases are mongoDB
CSS
40
star
11

PowerSqlgen

Generate sqls to test mysql database
Shell
20
star
12

NetworkDisk

【代码随想录知识星球】项目分享-基于Vue和Spring Boot等技术构建的前后端分离、分布式的网盘系统
Java
13
star
13

interview-master

面试大师
9
star
14

algorithm-interview-course

算法面试通关精讲
C++
8
star
15

Backend-Developer-Interview-Tutorial

史上最全的后端开发面试攻略
7
star
16

CS-Books

📚 计算机技术类书籍 PDF 最强总结
6
star
17

vssue

4
star
18

planeGame

my plane game
Java
3
star
19

codestyle

尽量不要写重复的代码
C++
3
star
20

RPC-Java

【代码随想录知识星球】项目分享-手撕RPC框架
2
star
21

KVstorageBaseRaft-cpp

【代码随想录知识星球】项目分享-基于Raft的k-v存储数据库
1
star
22

youngyangyang04.github.io

Carl Sun's BLOG
CSS
1
star
23

APPbackendFramework

A simple APP backend framework
PHP
1
star
24

Documents

This repository is for sharing my documents
1
star
25

test2

C
1
star
26

fileScan_1

Part of the OMS infrastructure. generates xml file by scan the local project, analyze the xml and download the bundle that the system need by scan properties file that include the many websites infomation.
Java
1
star