综述数据结构和算法

                                                    综述数据结构和算法

数据结构和算发的作用:

        数据结构是对在计算机内存中(又时在磁盘中)的数据的一种安排,数据结构包括数组,栈,二叉树,哈希表等等。苏算法是对这些结构的数据进行各种处理,如查找一条特殊的数据项或对数据进行排序。

        数据结构的特性:   

数据结构优点缺点
数组插入快,如果知道下标,可以非常快的存储查找慢。删除慢,大小固定
有序数组比无序数组查找快    删除和插入慢,大小固定
提供了后进先出的存储方式存取其他项很慢
队列提供先进先出的存储方式存取其他项很慢
链表插入快,删除快    查找慢
二叉树查找,插入,删除都快删除算法复杂
红-黑树查找,插入,删除都快。数总数平衡的算法复杂
2-3-4树插入,查找,删除都快,树总是平衡的,类似的树对磁盘存储有用算法复杂
哈希表如果关键字已知则存取快,插入快删除慢,如果果不知道关键字则存取很慢,对存储空空使用不充分,对其他数据项存取慢
插入,删除快,对最大数据项的存取很快,堆现实时间建模有些算法慢且复杂
  
    
    认知点:
       1. 数据结构是指数据在计算机内存空间或者磁盘中的组织形式。
       2. 正确的选择数据结构会使程序的效率大大提高
       3.算法使完成特定任务的过程
       4.在java中,算法经常通过类的方法实现
          

大O表示法:

    表示算法的运行时间速度等。    N时表示数据项的总数   O你的操作所话费的时间,比如插入O(1)

    

            越靠近x轴的越说明执行效率越快。反之则越慢。









高级排序:希尔排序,划分,快速排序,基数排序 https://blog.csdn.net/meiLin_Ya/article/details/80821126

原文地址:https://www.cnblogs.com/meiLinYa/p/9302999.html