数据结构与算法学习之路(一、算法和数据结构)

一、算法

1.对算法的理解

(1)算法(algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法来描述解决问题的策略机制。

(2)算法在计算机领域本质是一系列的程序指令,用于解决特定的运算或逻辑问题。

(3)算法有简单的,有复杂的,有高效的,也有拙劣的。

(4)算法是为了解决某一类问题,这不同的问题采用不同的算法。

(5)算法与数据结构密不可分,数据结构是算法的基石,算法依托于数据结构。

(6)算法首先必须是正确的,即对于任意的一组输入,包括合理的输入与不合理的输入,总能得到预期的输出。

(7)算法必须是由一系列具体步骤组成的,并且每一步都能够被计算机所理解和执行。

2.衡量算法好坏的标准

时间复杂度与空间复杂度

3.应用

运算、排序、查找、最优决策...

二、数据结构

1.对数据结构理解

        数据结构对应的英文单词是data strycture,是数据的组织、管理和存储的格式,其使用目的是为了高效的访问和修改数据。

        数据的逻辑结构和物理结构是数据结构的两个密切相关的方面,同一逻辑结构可以对应不同的存储结构。算法的设计取决于数据的逻辑结构,而算法的实现依赖于指定的存储结构。

2.分类

(1)线性结构 线性结构是最简单的数据结构,包括数组、链表,以及由它们衍生来的栈、队列、哈希表。

(2)树 树是相对复杂的数据结构,其中比较有代表性的是二叉树,由它又衍生出了二叉堆。

(3)图 图是更为复杂的数据结构,因为在途中会呈现出多对多的关联关系。

(4)其他数据结构 比如跳表、哈希链表、位图。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值