zoukankan      html  css  js  c++  java
  • 初学数据结构和算法(

    1什么是数据结构?什么是算法?

    从广义上讲,数据结构就是指一组数据的存储结构。算法就是操作数.(数据结构指的是“一组数据的存储结构”,算法指的是“操作数据的一组方法”。)

    从狭义上讲,是指某些著名的数据结构和算法,比如队列、栈、堆、二分查找、动态规划等.

    数据结构:数组、链表、栈、队列、散列表、二叉树‘、堆、跳表、图、Tire树
    算法: 递归、排序、二分查找、搜索、哈希算法、贪心算法、分治算法、回溯算法、动态规划、字符串匹配算法

    数据结构和算法的关系

    数据结构是为算法服务的,算法要作用在特定的数据结构之上。

    数据结构是静态的,它只是组织数据的一种方式。如果不在它的基础上操作,构建算法,孤立存在的数据结构就是没用的.

    3理解复杂度分析

    数据结构和算法在不同的环境下他们的效率是不同的,那我们如何来判断这个数据结构和算法在当前环境下的效率.

    这就需要引用一个衡量的标准.时间复杂度和空间复杂度.学习数据结构和算法的基石,就是要学会`复杂度分析`。

    知道怎么去分析复杂度,才能作出正确的判断,在特定的场景下选用合适的正确的算法。而不是盲目的死记烂背,机械操作.

    本文是在学习王争老师的数据结构与算法之美的笔记.有些是王争老师或者评论的言语.在此附上原文链接

     https://time.geekbang.org/column/article/40036

  • 相关阅读:
    [转帖]译文:如何使用SocketAsyncEventArgs类(How to use the SocketAsyncEventArgs class)
    如何建立一个“绑定友好的”usercontrol--wpf
    安卓学习(三)
    安卓学习(二)
    Android学习1
    用伪代码梳理springboot
    用伪代码梳理javaweb从零开始
    用伪代码梳理spring源码
    java如何写出简洁代码
    JAVA修复微信官方SDK支付XXE漏洞
  • 原文地址:https://www.cnblogs.com/yan0720/p/10549116.html
Copyright © 2011-2022 走看看