C++笔记

2023/02/22

C++笔记

网络编程

  1. socket编程,网络框架
  • IO多路复用: select/poll/epoll
  1. 算法题:深度优先搜索、动态规划
  • 深度优先搜索先画:递归树
  1. 二叉树
    • 二叉树:节点度在0-2之间
    • 二叉搜索树:中序遍历的时候树结构是有序的,容易退化成单链表,所以需要平衡二叉树
    • 栈的标记法,用空指针做标记
    • 递归和人类思考问题的顺序是一致的;迭代是逆序的 迭代:
      • 重点1: 需要标记根节点
      • 重点2:遍历顺序是逆序的方式入栈 整个问题的解 可以拆分成子问题的类似解 有递归和动态规划两种方式 动态规划: 子问题的解有重叠
  2. C++创建指针时,需要分配内存(malloc),否则创建出来的是空指针

杂记

  1. 如果类中包含这样的静态数据成员,即其值将在新对象被创建时发生变化,则应该提供一个显式复制构造函数来处理计数问题;如果类中包含了使用new初始化的指针成员,应当定义一个复制构造函数,以复制指向的数据,而不是指针,这被称为深度复制。复制的另一种形式(成员复制或浅复制)只是复制指针值。浅复制仅浅浅地复制 指针信息,而不会深入“挖掘”以复制指针引用的结构。

Post Directory