计算机思维导图

《计算机思维导图》

一、 计算机基础

1.1 计算机组成

  • 1.1.1 硬件系统

    • CPU (中央处理器)
      • 运算器:执行算术和逻辑运算。
      • 控制器:控制指令的执行顺序和数据流。
      • 高速缓存 (Cache):提高CPU访问速度。
    • 存储器
      • 内存 (RAM):临时存储数据和程序。
      • 只读存储器 (ROM):存储启动程序和BIOS。
      • 硬盘 (HDD/SSD):永久存储数据。
    • 输入设备
      • 键盘、鼠标、扫描仪、摄像头等。
    • 输出设备
      • 显示器、打印机、音响等。
    • 总线
      • 连接各个组件,传输数据和控制信号。
  • 1.1.2 软件系统

    • 系统软件
      • 操作系统 (OS):管理硬件资源,提供用户界面。
        • Windows、Linux、macOS、Android、iOS等。
      • 驱动程序:控制硬件设备。
      • 编程语言及其编译器/解释器 (如C++, Java, Python)。
    • 应用软件
      • 办公软件、游戏、浏览器、图像处理软件等。

1.2 数据表示与存储

  • 1.2.1 数据类型

    • 基本数据类型
      • 整型 (int, short, long, byte)
      • 浮点型 (float, double)
      • 字符型 (char)
      • 布尔型 (boolean)
    • 复合数据类型
      • 数组
      • 结构体 (struct)
      • 类 (class)
      • 指针 (pointer)
  • 1.2.2 数据编码

    • 二进制
    • ASCII码
    • Unicode (UTF-8, UTF-16, UTF-32)
  • 1.2.3 存储方式

    • 位 (bit)
    • 字节 (byte)
    • 千字节 (KB)
    • 兆字节 (MB)
    • 吉字节 (GB)
    • 太字节 (TB)

1.3 操作系统原理

  • 1.3.1 进程管理

    • 进程的概念
    • 进程状态 (新建、就绪、运行、阻塞、终止)
    • 进程调度算法 (FCFS, SJF, 优先级调度, 轮转调度)
    • 进程间通信 (IPC)
      • 共享内存、消息队列、管道等。
    • 死锁
  • 1.3.2 内存管理

    • 内存分配
      • 连续分配 (固定分区、可变分区)
      • 非连续分配 (分页、分段、段页式)
    • 虚拟内存
      • 页面置换算法 (FIFO, LRU, OPT)
  • 1.3.3 文件系统

    • 文件组织方式 (目录结构)
    • 文件操作 (创建、删除、读写)
    • 磁盘管理

二、 编程基础

2.1 编程范式

  • 2.1.1 面向过程编程

    • 以过程为中心,强调算法。
    • C语言。
  • 2.1.2 面向对象编程

    • 以对象为中心,强调封装、继承、多态。
    • Java, C++, Python。
  • 2.1.3 函数式编程

    • 以函数为中心,强调纯函数、不可变性。
    • Haskell, Lisp, Scala。

2.2 常用数据结构

  • 2.2.1 线性结构

    • 数组
    • 链表 (单向链表、双向链表、循环链表)
    • 栈 (LIFO)
    • 队列 (FIFO)
  • 2.2.2 非线性结构

      • 二叉树、二叉搜索树、平衡二叉树、B树、B+树。
      • 邻接矩阵、邻接表。

2.3 常用算法

  • 2.3.1 排序算法

    • 冒泡排序、选择排序、插入排序、快速排序、归并排序、堆排序。
  • 2.3.2 查找算法

    • 顺序查找、二分查找、哈希查找。
  • 2.3.3 图算法

    • 深度优先搜索 (DFS)、广度优先搜索 (BFS)。
    • 最短路径算法 (Dijkstra, Floyd-Warshall)。
    • 最小生成树算法 (Prim, Kruskal)。
  • 2.3.4 动态规划

三、 计算机网络

3.1 网络协议

  • 3.1.1 OSI 模型

    • 物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。
  • 3.1.2 TCP/IP 协议族

    • 应用层 (HTTP, FTP, SMTP, DNS)
    • 传输层 (TCP, UDP)
    • 网络层 (IP)
    • 数据链路层 (以太网, PPP)

3.2 网络拓扑结构

  • 总线型、星型、环型、树型、网状型。

3.3 网络安全

  • 防火墙
  • 入侵检测系统 (IDS)
  • 虚拟专用网络 (VPN)
  • 加密技术 (对称加密、非对称加密、哈希算法)

四、 数据库

4.1 关系型数据库

  • 4.1.1 SQL

    • 查询 (SELECT)
    • 插入 (INSERT)
    • 更新 (UPDATE)
    • 删除 (DELETE)
  • 4.1.2 关系模型

    • 实体、属性、关系
    • 主键、外键
  • 4.1.3 ACID 特性

    • 原子性 (Atomicity)
    • 一致性 (Consistency)
    • 隔离性 (Isolation)
    • 持久性 (Durability)
  • 4.1.4 数据库设计

    • 范式 (1NF, 2NF, 3NF, BCNF)

4.2 NoSQL 数据库

  • 键值数据库 (Redis, Memcached)
  • 文档数据库 (MongoDB)
  • 列式数据库 (HBase)
  • 图形数据库 (Neo4j)

五、 软件工程

5.1 软件开发模型

  • 瀑布模型
  • 迭代模型
  • 敏捷开发 (Scrum, Kanban)

5.2 软件测试

  • 单元测试
  • 集成测试
  • 系统测试
  • 验收测试

5.3 版本控制

  • Git (GitHub, GitLab, Bitbucket)

六、 人工智能基础

6.1 机器学习

  • 监督学习 (回归、分类)
  • 无监督学习 (聚类、降维)
  • 强化学习

6.2 深度学习

  • 神经网络 (CNN, RNN, Transformer)

6.3 自然语言处理 (NLP)

  • 文本分类、文本生成、机器翻译。

这份思维导图涵盖了计算机科学的一些核心领域,并尝试以清晰的层次结构呈现。

上一个主题: 西游记思维导图 下一个主题: 排列组合思维导图

相关思维导图推荐

分享思维导图