当前位置: 首页 > news >正文

网页网站制作公司群晖wordpress修改端口

网页网站制作公司,群晖wordpress修改端口,镇江网站建设案例,黄强会见韩国忠清南道知事金泰钦1. 数据结构 本文整理自《大话数据结构》及传智播客视频教程 什么是数据结构? 数据结构主要研究非数值计算程序问题中的操作对象以及它们之间的关系。这个概念比较拗口,可以这样理解,计算机需要解决生活问题,但是现实中有很多个体…

1. 数据结构

本文整理自《大话数据结构》及传智播客视频教程

什么是数据结构?

数据结构主要研究非数值计算程序问题中的操作对象以及它们之间的关系。这个概念比较拗口,可以这样理解,计算机需要解决生活问题,但是现实中有很多个体有着复杂的联系,计算机如何描述生活中个体的联系?这就需要用到数据结构。简单点说,数据结构是研究节点跟节点之间的关系(数组、链表、树、图等)。

1.1 数据

说到数据结构,不得不说说数据。什么是数据?

数据是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合。当然数据不仅包括整型,布尔等类型,字符、图像、音视频这些都属于数据。
说简单点,数据是程序的操作对象,数据是用于描述客观事物的,总之,数据是一个抽象的概念,将其进行分类后得到程序设计语言中的类型。如:int,float 等等

数据还涉及都以下概念:

  • 数据元素:组成数据的基本单位
  • 数据项:一个数据元素由若干数据项组成
  • 数据对象:性质相同的数据元素的集合 (比如:数组,链表)
    数据结构基本概念.png

举个例子说明一下这些概念(java语言):

  private Person p1;  //数据元素private List<Person> mPersons; //数据对象class Person {private int age; //数据项private String name; //数据项}

1.2 数据结构

数据元素之间不是独立的,存在特定的关系,这些关系即结构。

数据结构指数据对象中数据元素之间的关系 。如:数组中各个元素之间存在固定的线性关系。

1.2.1 逻辑结构

从不同的角度,数据结构又分为逻辑结构和物理结构。

逻辑结构是从逻辑关系上描述数据,它与数据的存储无关,是独立于计算机的。逻辑结构可细分为4类:

  • 集合 数据元素间除 “同属一个结合”外,无其他关系;
  • 线性结构 一个对一个,比如线性表、栈、队列等;
  • 树形结构 一个对多个,比如二叉树;
  • 图状结构 多个对多个,如图状结构;


    逻辑辑结分类构.png

1.2.2 物理结构

数据的物理结构也称存储结构,是数据的逻辑结构在计算机存储器的形式(或映像)。它依赖于计算机。
存储结构可分为四大类:顺序、链式、索引、散列。

1.3 数据运算

数据运算是在数据的逻辑结构上定义的操作,他在数据的存储结构上实现。最常用的数据运算有五种:插入、删除、修改、查找、排序

2. 算法

2.1 算法效力的度量方法

先看一个示例(java)

//方法一private static void func1() {int sum = 0, n = 100;for (int i = 1; i <= n; i++) {sum = sum + i;}System.out.println("sum1=" + sum);}//方法二private static void func2() {int sum = 0, n = 100;sum = (1 + n) * n / 2;System.out.println("sum2=" + sum);}

上面2个算法都是计算1-100内的求和,问题来了,如何评估这2个算法的优劣呢?

度量一个算法的好坏主要有2种方法,一个是事后统计方法,一个是事前分析估算法。

2.1.1 事后统计方法

这种方法有很大缺点,如:

  • 为了获得不同算法的运行时间必须编写相应程序
  • 运行时间严重依赖硬件以及运行时的环境因素
  • 算法的测试数据的设计相当困难

所以事后统计法虽然直观,但是实施困难且缺陷多。

2.1.2 事前分析估算法

事前分析估算法是依据统计的方法对算法效率进行估算。

2.2 怎么判断一个算法的效率?

  • 判断一个算法的效率时,往往只需要关注操作数量的最高次项,其它次要项和常数项可以忽略。
  • 在没有特殊说明时,我们所分析的算法的时间复杂度都是指最坏时间复杂度。
  • 只有常数项记做1
  • 操作数量的估算可以作为时间复杂度的估算

2.3 算法的时间复杂度

怎么表示一个算法的效率?大O表示法

常见的时间复杂度

执行次数函数非正式术语
12O(1)常数阶
2n+3O(n)线性阶
3n2+2n+1O(n2)平方阶
5log2n+20O(logn)对数阶
2n+3nlog2n+19O(nlogn)nlogn阶
6n3+2n2+3n+4O(n3)立方阶
2nO(2n)指数阶

常见的时间复杂度之间的关系

image.png

常用的时间复杂度所耗费的时间从小到大依次是:

O(1) < O(logn) < O(n) < O(nlogn) < O(n2) < O(n3) < O(2n) < O(n!) < O(nn)

最后编辑于:2025-03-31 20:49:08


喜欢的朋友记得点赞、收藏、关注哦!!!

http://www.dtcms.com/a/421187.html

相关文章:

  • 易云巢做营销型网站网站可分为哪两种类型
  • 怎样免费做网站波音网站开发
  • 门户网站建设服务报价素材网免费下载
  • 公司网站开发费用济南兴田德润简介图片重庆公司社保缴费比例
  • 在线做插画的网站最近热点新闻素材
  • 做网站有什么市场风险商城类网站如何做
  • 湛江建站程序建设个电影网站多少钱
  • 医疗保健 网站 备案自己可以做网站服务器吗
  • 微网站和普通网站区别大丰网站建设价格
  • 东莞外贸企业做网站家庭网络设计方案
  • 江苏建设厅网站用nodejs可以做网站么
  • 网站代码优化目的信誉好的合肥网站推广
  • 建设银行梅州分行网站重庆网站制作技术
  • 网络舆情网站宜家家居官网网上商城app
  • 网站设计尺寸规范企业网站建设与管理试题
  • 新网$网站优化网站的点击率
  • 普陀区网站制作东莞网站建设 少儿托管
  • 深圳住房和建设厅网站成都全案设计公司
  • 用糖做的网站上海网站制作顾
  • 谷歌网站的主要内容做网站卖广告多少钱
  • 建设银行网站账号怎么注销域名解析完成网站怎么做
  • 网站编辑器是怎么做的群晖nas wordpress
  • 网站模板带后台 下载wordpress文章分页
  • 网站规划和建设设计师喜欢的几个网站
  • 自贡 网站建设wordpress整站cdn
  • 中国建设银行 官方网站网络营销好学吗
  • 做网站为什么要做备案接入济南软月建站
  • 有没有给宝宝做辅食的网站用html制作个人博客
  • 加外链网站河北邢台区号
  • 药品网站 icp全球农村电商平台有哪些