浙大数据结构mooc知识点总结

数据结构

线性结构

线性表

浙大数据结构mooc知识点总结_第1张图片

浙大数据结构mooc知识点总结_第2张图片

浙大数据结构mooc知识点总结_第3张图片

浙大数据结构mooc知识点总结_第4张图片

堆栈

浙大数据结构mooc知识点总结_第5张图片

浙大数据结构mooc知识点总结_第6张图片

队列

浙大数据结构mooc知识点总结_第7张图片

树的定义

浙大数据结构mooc知识点总结_第8张图片

浙大数据结构mooc知识点总结_第9张图片

二叉树及存储结构

浙大数据结构mooc知识点总结_第10张图片

浙大数据结构mooc知识点总结_第11张图片

n0+n1+n2=0*n0+1*n1+2*n2+1化简得n0=n2+1

二叉树的遍历

浙大数据结构mooc知识点总结_第12张图片

浙大数据结构mooc知识点总结_第13张图片

浙大数据结构mooc知识点总结_第14张图片

浙大数据结构mooc知识点总结_第15张图片

浙大数据结构mooc知识点总结_第16张图片

后序遍历:对于任一结点P,将其入栈,然后沿其左子树一直往下搜索,直到搜索到没有左孩子的结点,此时该结点出现在栈顶,但是此时不能将其出栈并访问, 因此其右孩子还为被访问。所以接下来按照相同的规则对其右子树进行相同的处理,当访问完其右孩子时,该结点又出现在栈顶,此时可以将其出栈并访问。这样就 保证了正确的访问顺序。可以看出,在这个过程中,每个结点都两次出现在栈顶,只有在第二次出现在栈顶时,才能访问它。因此需要多设置一个变量标识该结点是 否是第一次出现在栈顶。

void postOrder2(BinTree *root)    //非递归后序遍历
{
    stack s;
    BinTree *p=root;
    BTNode *temp;
    while(p!=NULL||!s.empty())
    {
        while(p!=NULL)              //沿左子树一直往下搜索,直至出现没有左子树的结点 
        {
            BTNode *btn=(BTNode *)malloc(sizeof(BTNode));
            btn->btnode=p;
            btn->isFirst=true;
            s.push(btn);
            p=p->lchild;
        }
        if(!s.empty())
        {
            temp=s.top();
            s.pop();
            if(temp->isFirst==true)     //表示是第一次出现在栈顶 
             {
                temp->isFirst=false;
                s.push(temp);
                p=temp->btnode->rchild;    
            }
            else                        //第二次出现在栈顶 
             {
                cout<btnode->data<<" ";
                p=NULL;
            }
        }
    }    
}

浙大数据结构mooc知识点总结_第17张图片

浙大数据结构mooc知识点总结_第18张图片

由两种遍历序列确定二叉树,必须要有中序遍历才行。

浙大数据结构mooc知识点总结_第19张图片

判别二叉树同构

给定两棵树T1和T2。如果T1可以通过若干次左右孩子互换就变成T2,则我们称两棵树是“同构”的。

浙大数据结构mooc知识点总结_第20张图片

浙大数据结构mooc知识点总结_第21张图片

浙大数据结构mooc知识点总结_第22张图片

浙大数据结构mooc知识点总结_第23张图片

浙大数据结构mooc知识点总结_第24张图片

二叉搜索树

浙大数据结构mooc知识点总结_第25张图片

浙大数据结构mooc知识点总结_第26张图片

浙大数据结构mooc知识点总结_第27张图片

浙大数据结构mooc知识点总结_第28张图片

浙大数据结构mooc知识点总结_第29张图片

平衡二叉树

浙大数据结构mooc知识点总结_第30张图片

浙大数据结构mooc知识点总结_第31张图片

浙大数据结构mooc知识点总结_第32张图片

浙大数据结构mooc知识点总结_第33张图片

浙大数据结构mooc知识点总结_第34张图片

浙大数据结构mooc知识点总结_第35张图片

浙大数据结构mooc知识点总结_第36张图片

完全二叉树实现的优先队列

哈夫曼树

浙大数据结构mooc知识点总结_第37张图片

浙大数据结构mooc知识点总结_第38张图片

浙大数据结构mooc知识点总结_第39张图片

并查集

浙大数据结构mooc知识点总结_第40张图片

浙大数据结构mooc知识点总结_第41张图片

浙大数据结构mooc知识点总结_第42张图片

浙大数据结构mooc知识点总结_第43张图片

浙大数据结构mooc知识点总结_第44张图片

如何表示图

浙大数据结构mooc知识点总结_第45张图片

浙大数据结构mooc知识点总结_第46张图片

浙大数据结构mooc知识点总结_第47张图片

图的遍历

浙大数据结构mooc知识点总结_第48张图片

浙大数据结构mooc知识点总结_第49张图片

浙大数据结构mooc知识点总结_第50张图片

浙大数据结构mooc知识点总结_第51张图片

浙大数据结构mooc知识点总结_第52张图片

最短路径问题

浙大数据结构mooc知识点总结_第53张图片

浙大数据结构mooc知识点总结_第54张图片

浙大数据结构mooc知识点总结_第55张图片

浙大数据结构mooc知识点总结_第56张图片

浙大数据结构mooc知识点总结_第57张图片

浙大数据结构mooc知识点总结_第58张图片

最小生成树MST

浙大数据结构mooc知识点总结_第59张图片

浙大数据结构mooc知识点总结_第60张图片

浙大数据结构mooc知识点总结_第61张图片

拓扑排序

浙大数据结构mooc知识点总结_第62张图片

浙大数据结构mooc知识点总结_第63张图片

浙大数据结构mooc知识点总结_第64张图片

排序

简单排序

稳定性:任意两个相等的数据,排序前后的相对位置不发生改变

浙大数据结构mooc知识点总结_第65张图片

浙大数据结构mooc知识点总结_第66张图片

浙大数据结构mooc知识点总结_第67张图片

浙大数据结构mooc知识点总结_第68张图片

希尔排序

浙大数据结构mooc知识点总结_第69张图片

浙大数据结构mooc知识点总结_第70张图片

浙大数据结构mooc知识点总结_第71张图片

堆排序

浙大数据结构mooc知识点总结_第72张图片

浙大数据结构mooc知识点总结_第73张图片

浙大数据结构mooc知识点总结_第74张图片

归并排序

浙大数据结构mooc知识点总结_第75张图片

浙大数据结构mooc知识点总结_第76张图片

快速排序

浙大数据结构mooc知识点总结_第77张图片

浙大数据结构mooc知识点总结_第78张图片

基数排序

浙大数据结构mooc知识点总结_第79张图片

浙大数据结构mooc知识点总结_第80张图片

排序算法比较

浙大数据结构mooc知识点总结_第81张图片

散列

散列表

浙大数据结构mooc知识点总结_第82张图片

散列函数的构造

浙大数据结构mooc知识点总结_第83张图片

浙大数据结构mooc知识点总结_第84张图片

浙大数据结构mooc知识点总结_第85张图片

浙大数据结构mooc知识点总结_第86张图片

浙大数据结构mooc知识点总结_第87张图片

冲突处理方法

浙大数据结构mooc知识点总结_第88张图片

浙大数据结构mooc知识点总结_第89张图片

浙大数据结构mooc知识点总结_第90张图片

浙大数据结构mooc知识点总结_第91张图片

浙大数据结构mooc知识点总结_第92张图片

浙大数据结构mooc知识点总结_第93张图片

浙大数据结构mooc知识点总结_第94张图片

浙大数据结构mooc知识点总结_第95张图片

浙大数据结构mooc知识点总结_第96张图片

浙大数据结构mooc知识点总结_第97张图片

浙大数据结构mooc知识点总结_第98张图片

浙大数据结构mooc知识点总结_第99张图片

散列表的性能分析

浙大数据结构mooc知识点总结_第100张图片

浙大数据结构mooc知识点总结_第101张图片

浙大数据结构mooc知识点总结_第102张图片

你可能感兴趣的:(数据结构)