数据网络业务 android框架 数据框架结构_java

数据结构知识框架总结:
1、 数据存储结构
    顺序存储结构    用数组实现
    链式存储结构    用节点实现(数据元素+指针)
2、 数据逻辑结构

  •     线性结构

        线性表:
            顺序存储结构:顺序表
            链式存储结构:单链表、循环单链表、双向链表、仿真链表
        堆栈:后进先出
            顺序堆栈、链式堆栈
            栈底、栈顶(入栈、出栈)
            应用:括号匹配问题、表达式计算问题
        队列:先进先出
            顺序队列(假溢出问题)、顺序循环队列,及队空队满判断问题
            链式队列、
            队头:出队
            队尾:入队
            应用:回文
        串:串的顺序存储结构
            串的链式存储结构
            串的模式匹配:Brute-Force算法、KMP算法
        数组:基本类型的数组、对象类型的数组
        集合:数据元素无序且不重复
        矩阵
            特殊矩阵
            稀疏矩阵
            压缩存储

  •     树型结构

        树:树是递归定义的
            无序的
            树的表示法:直观表示法、形式化表示法、凹入表示法
            树的存储结构:双亲表示法、孩子表示法、双亲孩子表示法、孩子兄弟表示法
        二叉树:有序的
            满二叉树一定是完全二叉树
            二叉树所有节点的表示形式:空节点、无左右子树节点、只有左子树节点、只有右子树节点、左右子树均存在节点
            二叉树的存储结构:顺序存储结构、链式存储结构、仿真指针存储结构
            二叉树的遍历:前序、中序、后序、层序

  •     图型结构

3、 算法
    查找:
        静态查找:
            无序序列查找
            有序序列查找:顺序查找、二分查找
        动态查找:二叉排序树、B_树
    排序:
        插入排序:
            直接插入排序    稳定
            希尔排序        不稳定
        选择排序:
            直接选择排序    稳定
            堆排序            不稳定
        交换排序:
            冒泡排序        稳定
            快速排序        不稳定
        归并排序    稳定
        基数排序    稳定
    递归:
        直接或间接调用自身
        一定有出口
        应用:阶乘函数、二分查找
4、 哈希表
    数据元素与其在内存中的位置之间存储在某种函数关系的存储结构
    哈希函数:储留余数法、直接定址法、数字分析法
    哈希冲突解决方法:
        开放地址法:
            线性探查法
            平方探查法
            为随机数法
        链表法