zoukankan      html  css  js  c++  java
  • 算法解读笔记

    1、查找第N个元素时,数组比较快,链表比较慢。

    • 查找第N个元素时,利用数组中的下标可以直接查,但在链表结构中查找时需要从第 1 个元素开始顺序遍历而花费不少时间。

       

    2、插入和删除数据时链表比较快,数组比较慢。

    • 在顺序排列的数据列中的特定位置插入新的数据时,数组要把插入位置后面的所有元素都向后移动。(删除也一样)

    • 对于链表,断开插入数据位置的前后的链,将新的数据连接到链表中就可以了。(删除也一样)

      插入数据时,通常只要把链断开,再将链重新连接,一次处理就能执行插入操作,时间消耗很少。

    • 执行数据的插入、删除操作时,利用链表的指针效率很高,但发生数据移动时花费的时间较多。

     

    3、环形缓冲是数组的头尾相连的数据结构,尾元素的下一个元素即为头元素。

     

    4、二叉树

    • 根据一个父结点和两个子结点的关系管理数据的结构称为二叉树。

    • 没有父结点的结点称为“根结点”,没有子结点的结点称为“叶结点”。

    5、堆:父结点的值不得比子结点的值大的二叉树。(或父结点的值不得比子结点的值小的二叉树)

    • 堆在求最大最小值的时候效率比较高,直接可以从根结点得到。

  • 相关阅读:
    jQuery选择器总结
    ASP.NET MVC Controller向View传值的几种方式
    C# 实现屏幕截屏
    C#方法参数传递-同时使用ref和out关键字
    C#委托的异步调用
    C#导出Excel总结
    JQuery Form AjaxSubmit(options)在Asp.net中的应用注意事项
    Ubuntu16.04 Tomcat9的安装
    ubuntu16.04 安装 eclipse
    pychram最新注册码
  • 原文地址:https://www.cnblogs.com/actionkong/p/3446439.html
Copyright © 2011-2022 走看看