Fork me on GitHub

数据结构和算法概述

数据结构

数据结构的定义

我们如何把现实中大量而且非常复杂的问题以特定的数据类型(个体)和特定的存储结构(个体的关系)保存到相应的主存储器(内存)中,以及在此基础上为实现某个功能而执行的相应操作,这个相应的操作也叫做算法

数据结构 == 个体 + 个体的关系

算法 == 对存储数据的操作

数据结构的特点

数据结构是软件设计中最核心的部分之一

程序 == 数据的存储 + 数据的操作 + 可被计算机执行的语言

算法

衡量算法的标准

时间复杂度:程序大概执行次数,不是程序执行的时间

空间复杂度:程序执行过程中,大概所占的最大内存

难以程序:实现算法的困难度

健壮性:稳定性或是否通用

PS:在计算机发展的早期,由于计算机内存比较小,程序猿一般希望程序的空间复杂度比较低,这样尽可能避免程序在运行过程中出现崩溃,所以算法一般会用时间来换空间;而现在增加内存是一件很容的事,而花费的价格也并不高,甚至可以忽略,我们的关注点都在程序的执行效率上,所以我们会用空间来换时间

 

posted @ 2018-10-14 20:45  独孤求派  阅读(233)  评论(0)    收藏  举报