平时遇到的数据结构面试问题

224 阅读1分钟
  • 排序问题:

image.png blog.csdn.net/gao14401560…

  • 红黑树

    • 红黑树有什么性质

      1)每个结点是红色或者黑色。

      2)根结点为黑色。

      3)叶结点为黑色的NULL结点。

      4)如果结点为红,其子节点必须为黑。

      5)任一结点到NULL的任何路径,所含黑结点数必须相同。

  • 平衡二叉树(AVL树)

    平衡二叉树是基于二分法的策略提高数据的查找速度的二叉树的数据结构。

    • 特点:

      (1)非叶子节点最多拥有两个子节点;

      (2)非叶子节值大于左边子节点、小于右边 子节点;

      (3)树的左右两边的层级数相差不会大于1;

      (4)没有值相等重复的节点;

  • B树

    • B树特点

      (1)树种的每个节点最多拥有m个子节点且m>=2,空树除外(注:m阶代表一个树节点最多有多少个查找路径,m阶=m路,当m=2则是2叉树,m=3则是3叉);

      (2)除根节点外每个节点的关键字数量大于等于ceil(m/2)-1个小于等于m-1个;(注:ceil()是个朝正无穷方向取整的函数 如ceil(1.1)结果为2)

      (3)所有叶子节点均在同一层、叶子节点除了包含了关键字和关键字记录的指针外也有指向其子节点的指针只不过其指针地址都为null对应下图最后一层节点的空格子

      (4)如果一个非叶节点有N个子节点,则该节点的关键字数等于N-1;

      (5)所有节点关键字是按递增次序排列,并遵循左小右大原则;