美文网首页
基础知识

基础知识

作者: 贺大伟 | 来源:发表于2020-11-16 22:09 被阅读0次

1. 计算机基础

CPU

1. 多核概念

2. CPU cache,L1,L2,L3 cache

3. cache line

4. 伪共享

5. 原子操作

内存

虚拟内存

页表/TLB

磁盘

磁盘类型:SSD,机械磁盘,NVME,NVM

MMAP

顺序读写/随机读写

内核 cache/预读

cache脏页flush

磁盘cache

fsync/datasync/sync

文件

本地文件

远程文件

虚拟文件系统

软链接/硬链接

文件句柄/资源

网络

IO多路复用(五种IO模型,EPOLL/POLL/SELECT)

TCP

HTTP/HTTPS

进程/线程

子进程

僵尸进程,孤儿进程

fork pid,共享,写时复制

区别联系

共享和不共享

进程切换/开销

线程切换/开销

堆,栈

地址分区

系统调用

进程的用户态和内核态

CPU上下文切换

中断上下文切换

内核态/用户态

权限

CPU上下文切换

中断

中断的处理过程

原子性

内存可见性

CPU cache失效

cache line/伪共享

锁, volatile

临界区

volatile的原理和作用

并行和并发

2. 算法

2.1 链表

链表复制,复杂链表复制,反转,局部反转,排序,单向链表,双向链表,有环链表,相交链表

2.2 队列

链表构建队列,数组构建队列,栈构建队列,优先级队列(堆)

2.3 栈

链表构建栈

2.4 树

二叉树,完全二叉树,搜索树,排序树,B树,B+树,红黑树,哈夫曼编码树,字典树

前序遍历,中序遍历,后序遍历,层序遍历 (递归非递归)

增删改查

2.5 堆

堆排序

优先级队列

多路归并

2.8 跳表

跳表的随机索引算法

跳表的时间复杂度

跳表的结构

2.9 动态规划

背包问题

鸡蛋楼层问题

2.10 贪心算法

排列组合

2.12 排序

冒泡排序/归并排序/多路归并排序/插入排序/希尔排序/快速排序/基数排序/桶排序/堆排序

特殊排序/超大文件排序/排序树排序

前K个排序

2.13 bitmap

原理

2.14 布隆过滤器

原理

2.15 定时器

定时器的设计

考虑线程,效率,水表设计

2.16 HashMap

负载因子, 扩展策略,索引计算优化,初始值16的意义

2.17 LRU

hashmap+list/淘汰策略

如何解决随机读取的干扰

相关文章

  • 音频基础知识02

     音频基础知识 01  音频基础知识 02  音频基础知识 03  音频基础知识 04 人类收集声音的历史   为...

  • PHP全栈学习笔记18

    php基础知识,JavaScript,jQuery,ajax基础知识 linux基础知识,mysql数据库的基础与...

  • PHP全栈学习笔记18

    php基础知识,JavaScript,jQuery,ajax基础知识 linux基础知识,mysql数据库的基础与...

  • C语言回顾

    基础知识 控制流 基础知识补充 其他主题

  • PHP面试知识脉络(更新中)

    PHP基础知识Javascript、jQuery、ajax基础知识Linux基础知识MySQL数据库的基础与优化程...

  • p2p理财基础知识

    p2p理财基础知识 p2p理财基础知识 p2p理财基础知识

  • 学习Vue框架之前,要有JavaScript的知识储备

    前端三剑客知识储备(有关前端的专题) ☑ HTML基础知识 ☑ CSS基础知识 ☑ JavaScript5基础知识...

  • angular笔记

    第一部分、基础知识--------------------------基础知识------------------...

  • 【学习】其他框架

    Zookeeper Zookeeper基础知识Zookeeper综合知识 HDFS HDFS基础知识 NoSQl ...

  • Python3基础知识

    Python3基础知识 | 基础语法 Python3基础知识 | 编程第一步 Python3基础知识 | 基本数据...

网友评论

      本文标题:基础知识

      本文链接:https://www.haomeiwen.com/subject/cvftiktx.html