数据结构与算法小札

什么是数据结构与算法

2020-05-05  本文已影响0人  木菀

概念:什么是数据结构,什么是算法

数据结构:数据元素之间的关系

算法:算法就是解决特定问题求解步骤的描述,在计算机中表现为指令的有限序列列,并且每个指令表示⼀一个或多个操作

数据结构是为算法服务的,算法要作用在特定的数据结构之上。因此,我们无法孤立数据结构来讲算法,也无法孤立算法来讲数据结构。

有了大致的定义后,我们再来细说数据结构和算法

数据结构

<table border="1" >
   <tr>
      <td colspan="8" align="center">数据结构</td>
   </tr>
   <tr>
      <td colspan="6" align="center">逻辑结构</td>
      <td colspan="2" align="center">存储结构</td>
   </tr>
   <tr>
      <td colspan="3" align="center">线性结构</td>
      <td colspan="3" align="center">非线性结构</td>
      <td rowspan="2" align="center" valign="middle">顺序存储结构</td>
      <td rowspan="2" align="center" valign="middle">链式存储结构</td>
   </tr>
   <tr>
      <td>线性表</td>
      <td>栈和队列</td>
      <td>字符串</td>
      <td>集合结构</td>
      <td>树结构</td>
      <td>图结构</td>
   </tr>
</table>

几种常见的逻辑结构


逻辑结构 常见的存储结构

对于⾮空的线性表和线性结构,其特点如下:

算法

特性:

设计要求:

执行效率:

几种常见的复杂度 排序从低到高

术语 表示
常数阶 O(1)
对数阶 O(log n)
线性阶 O(n)
线性对树阶 O(nlogn)
平方阶 O(n²)
立方阶 O(n³)
指数阶 O(2ⁿ)
阶乘阶 O(n!)
n次方阶 O(nⁿ)

画个图感受下:


几种复杂度增长趋势
上一篇 下一篇

猜你喜欢

热点阅读