数据结构与算法

2020-12-27  本文已影响0人  极速魔法

数据结构

计算机存储,组织数据的方式。存数据的,而且是在内存中存

算法

算法是一种解决特定问题的思路

数组与链表的对比

队列

链表实现
入队时移动tail, 出队时移动head

public void enqueue(Node node){ 
    if (tail == null){ 
        head = node; 
        tail=node; 
    }else { 
        tail.next = node;
        tail = node; 
    } 
    size++; 
    } 
    
public Node dequeue (){

    if (head == null) return null; 
    Node h = head; 
    //将拉取的节点的下一个节点变成新的表头 
    head = head.next; 
    //把旧的表头的下一个节点指向设置为null,让gc回收 
    h.next = null; 
    //队列为空 
    if (head == null) 
        tail = null; 
    size--; 
    return h;
}

递归

递归,去的过程叫"递",回来的过程叫”归“
递是调用,归是结束后回来
是一种循环,而且在循环中执行的就是调用自己
递归调用将每次返回的结果存在栈帧

二叉树

满二叉树要求所有分支都是满的;而完全二叉树只需保证最后一个节点之前的节点都齐全即可

前序遍历

根,左,右

中序遍历

根,左,右

后序遍历

左,右,根

B树和B+树区别

B树是非叶子节点和叶子节点都会存储数据。
B+树只有叶子节点才会存储数据,而且存储的数据都是在一行上,而且这些数据都是有指针指向 的,也就是有顺序的。

上一篇 下一篇

猜你喜欢

热点阅读