zoukankan      html  css  js  c++  java
  • 机试二

    数据结构在机试中的应用

    一、栈的应用:

      1、栈的特点:

        先进先出,只能在栈尾进行插入和删除操作。

      2、stl标准库:

        stack<int> s;

        s.push(i);//向栈中压入一个元素。

        int x=s.top();//读取栈顶的元素

        s.pop()//弹出栈顶元素

        标准模板库:

        #include<stack>

      3、应用:

        (1)括号匹配:  

        (2)简单计算器:

    二、哈夫曼树:

      1、构造哈夫曼树:

        思想:

          (1)将所有的节点放入集合K中。

          (2)取出集合中节点值最小的两个,相加构成新的节点。并将该节点加入到集合k中。然后循环1、2步。

          (3)若K中仅剩下一个节点,则构造完成。该节点的值即为当前的带权路径和。

      2、数据结构:

        我们使用堆得数据结构。可以使用stl中的标准模板--优先队列来实现。

        priority_queue<int> Q;

        上面默认建立大顶堆。

        建立小顶堆:

        priority<int vector<int>,greater<int>> Q;

        有关操作:

          q.push(x);

          q.top();

          q.pop()。

        所在库:

          #include<queue>

    三、二叉树:

      1、

     

     

     

     

     

    四、二叉排序树:

      1、

     

     

     

     

     

  • 相关阅读:
    C语言I—2019秋作业02
    C语言I—2019秋作业01
    C语言I博客作业01
    C语言I博客作业09
    C语言I博客作业08
    C语言I博客作业07
    C语言I博客作业06
    C语言I博客作业05
    C语言I博客作业04
    C语言I博客作业03
  • 原文地址:https://www.cnblogs.com/monty12/p/9458777.html
Copyright © 2011-2022 走看看