zoukankan      html  css  js  c++  java
  • 软考数据库-数据结构

    每年5月22日,是软考数据库考试时间,距现在还有158天,过完年时间就显示非常紧张了,一年一度的软考正在向我们逼近。说起来软考要考的知识还是挺多的,我会用一系列的文章来为大家介绍软考中的各个知识块,大家一起讨论学习,希望明年各位都能领到一个红本本,呵呵。

    首先用一个图来看一下数据结构中各个知识点之间的关系。

     其中树包括:

    图包括:

     
    1.线性表 
    顺序表与链表部分比较简单。也没多少概念,循环队列的地方注意一下,一般画个图分析一下即可。

    2.树 

    树的部分概念比较多。一般对于基本概念掌握好就Ok。对于某些技巧性的结论,记不准也没关系。 
    例题:某完全二叉树总共又767个结点,问叶子结点又几个? 
    分析:完全二叉树除了最底下叶子结点那层,上面都是满二叉树,满二叉树每一层是个等比序列,第一层为1,公比为2. 
    1,2,4,... 
    等比数列的和是2**k-1所以求K,对K向下去整得到9,也就是说上9层是满二叉树。
    2**9-1=511,511+256=767,所以还缺256个结点才能组合成为题中所描述的那颗二叉树,对于满二叉树来说,底层叶子上的结点是从左往右排列的,所以第十层上有256个叶子结点,是第九层上的左边128个结点生出来的,而第九层剩下128个结点没有生孩子结点,所以也是叶子结点,所以总共的叶子结点就是256+128=384 
     
    3  查找二叉树(二叉排序树)

     定义(递归条件): 

    1.查找树的左右子树各是一颗二叉排序树 
    2.若查找树的坐子树非空,则其左子树上的各结点值均小于根结点的值 
    3.若查找树的右子树非空,则其右子树上的各节点值均大于根结点的值

      

    上图就是一个二叉排序树。 
    对这棵树进行中序遍历: 2,3,4,5,6,7,8得到的就是排序结果  

    其它问题请加我的微信:x7993794, 可加入我的软考数据库微信群一起讨论

    有人说,程序=数据结构+算法,数据结构的重要性不言而喻,凡是重点也是难点,希望以上内容能给你学习数据机构带来帮助。(本文部分出自 “李骥平” 博客)

  • 相关阅读:
    C#-项目属性设置
    SQL--连接字符串总结
    希尔排序实现(不太满意)
    选择排序实现
    用位运算实现 | 与 ^ 的功能
    如何初始化一个定长List<T>
    线程池与Threadlocal
    常用类
    基本数据类型介绍
    eclipse快捷键
  • 原文地址:https://www.cnblogs.com/fredx/p/5051189.html
Copyright © 2011-2022 走看看