zoukankan      html  css  js  c++  java
  • 数据结构与算法是什么

      前言:数据结构一般和算法说在一起,称为数据结构与算法。这个知识非常好理解,但是一些老师每天XXX的简直不知所云。所以我就想写这篇简单的教程,知识浅薄,请包涵。

      什么是数据结构?

      数据结构就是一些有关系的数据的集合,有顺序表,链表,栈,队列,树,图。等这几种结构。

      什么是算法?

      算法就是解决问题的一种方法,解决一个问题的算法有很多,但总有一个算法比其他的方式好,要么节省时间,要么效率高。例如从1加到100,你当然可以来一个for循环来循环100次。你也可以利用高斯的方法(1+100)*50来计算,谁优谁劣一目了然吧。

      为什么要学习数据结构与算法?

      如果你以后希望从事和编写代码有关的工作的话,数据结构与算法是必备的技术,为什么?举个例子。你遇到了一个项目该怎么去实现完成?如果你没有学过数据结构就会想我是用数组呢还是用if else呢?如果你学过数据结构就会想我是用栈呢还是用二叉树和图呢? 这就暴露出第一个本质:解决问题的方式。  if else 谁都会。

      找到解决的方式之后,接下来你该面对的问题是我该怎么去用代码实现。这是一个很重要的问题,你解决问题的方式就是算法,为什么要学习算法呢?还是以从1加到100为例。同样一个问题,

    按照高斯同学的算法,时间复杂度是1,按照for循环的算法,时间复杂度是100.那如果是从1加到一千,一万,一亿呢?人家高斯同学的时间复杂度还是1,而for循环的则是一千,一万,一亿.......这就暴露出来第二个本质:解决问题的方式(算法)的好坏    如果你不介意算法的好坏那么人家一台服务器能够完成的事情,你需要好几台服务器,这时你的主管就会抓着头发说“oh my God”

      这就是学习数据结构与算法的本质了,具体代码该怎么打,下回见。

  • 相关阅读:
    IntelliJ IDEA创建Java项目
    Oracle常见五个服务的作用
    Windows2008开启telnet客户端命令
    整理jQuery操作select控件常用功能代码
    Asp.Net程序报错
    Oracle中start with connect by prior用法
    Spring中无法访问resources目录下页面或静态资源
    对搜狗输入法的个人评价
    课堂练习寻找水王
    典型用户分析及用户场景分析
  • 原文地址:https://www.cnblogs.com/yunquan/p/4887078.html
Copyright © 2011-2022 走看看