• 数据结构和算法概述


    什么是数据结构

    官方解释:

    数据结构是一门研究非数值计算的程序设计问题中的操作对象,以及他们之间的关系和操作等相关问题的学科。

    大白话:

    数据结构就是把数据元素按照一定的关系组织起来的集合,用来组织和存储数据

    数据结构分类

    传统上,我们可以把数据结构分为逻辑结构和物理结构两大类。

    逻辑结构分类:

    逻辑结构是从具体问题中抽象出来的模型,是抽象意义上的结构,按照对象中数据元素之间的相互关系分类,也是 我们后面课题中需要关注和讨论的问题。

    a.集合结构:集合结构中数据元素除了属于同一个集合外,他们之间没有任何其他的关系。

    b.线性结构:线性结构中的数据元素之间存在一对一的关系

    c.树形结构:树形结构中的数据元素之间存在一对多的层次关系

    d.图形结构:图形结构的数据元素是多对多的关系

    物理结构分类:

    逻辑结构在计算机中真正的表示方式(又称为映像)称为物理结构,也可以叫做存储结构。常见的物理结构有顺序 存储结构、链式存储结构。

    顺序存储结构:

    把数据元素放到地址连续的存储单元里面,其数据间的逻辑关系和物理关系是一致的 ,比如我们常用的数组就是 顺序存储结构。

    顺序存储结构存在一定的弊端,就像生活中排时也会有人插队也可能有人有特殊情况突然离开,这时候整个结构都 处于变化中,此时就需要链式存储结构。

    链式存储结构:

    是把数据元素存放在任意的存储单元里面,这组存储单元可以是连续的也可以是不连续的。此时,数据元素之间并 不能反映元素间的逻辑关系,因此在链式存储结构中引进了一个指针存放数据元素的地址,这样通过地址就可以找 到相关联数据元素的位置

    什么是算法?

    官方解释:

    算法是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法解决问题的策略 机制。也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。

    大白话 :

    算法就是解决问题的方式,就像中学时代的数学一样,其实数学领域的算法和计算机领域的算法有很多相通之处。
    我们后面要刷的很多题目,都不好说是数学问题还是算法问题。

    我们所涉及的算法,是计算机科学领域的算法,它的本质是一系列程序指令,用于解决特定的运算和逻辑问题

    算法有简单的,也有复杂的,简单的如1+1=2

    也有复杂的,例如

    大千世界任务问题,一旦向使用计算机来解决,那必然最终要变成一行行可以执行的代码,解决这个问题的过程就是算法。

    算法与数据结构又是啥关系

    算法是解决问题的思想,数据结构是具体的实现载体,这就像战术与武器的关系。

    任何算法,如果想做成计算机可以执行的程序,那必然要借助数据结构将算法进行细化和步骤化,这就是程序开发的设计方案。
    在算法考察中,有相当一部分就是数据结构本身的增删改查和各种各样的变换。而在此基础之上,再考虑一些比较复杂的实际问题


    这期就到这里 , 下期见!

  • 相关阅读:
    nodejs+vue教室管理系统的设计与实现-微信小程序-安卓-python-PHP-计算机毕业设计
    只有一个人可以改变世界,那就是你自己!
    [计算机网络]套接字编程
    完整卸载SQL Server2008
    一文整理深度学习【CT原理、成像及CT重建知识汇总】
    About Covariance and Correlation(协方差和相关)
    Python中tuple()函数的用法
    百度智能云章淼:详解企业级七层负载均衡开源软件BFE
    LeetCode-3. 无重复字符的最长子串-Java-medium
    java相关的各种环境安装和配置
  • 原文地址:https://blog.csdn.net/sytdsqzr/article/details/134040364