class 1

数据结构就是指 按一定的逻辑结构组成的一批数据,使用某种存储结构将这批数据存储于计算机中,并在这些数据上定义了一个运算集合。

例1、煤气管道的铺设问题。如图需为城市的各小区之间铺设煤气管道,对 n 个小区只需铺设 n-1 条管线,由于地理环境不同等因素使各条管线所需投资不同(如图上所标识),如何使投资成本最低?这是一个讨论图的生成树的问题。

way1:prim法================从最小边开始画圈 并不断插入次小边做集合 ========================

(9)(H,I) ==> (9,12)(H,I,A) ==> (9,12,34)(H,I,A,B) ==> (9,12,34,8)(H,I,A,B,C) ==>(9,12,34,8)(H,I,A,B,C) ==>(9,12,34,8,21)(H,I,A,B,C,D) ==>(9,12,34,8,21)(H,I,A,B,C,D)

==>(9,12,34,8,21,31)(H,I,A,B,C,D,E) ==>(9,12,34,8,21,31,10)(H,I,A,B,C,D,E,G) ==>(9,12,34,8,21,31,10,79)(H,I,A,B,C,D,E,G,F) 

way2:kruskal法===============排序 寻找不构成回路的边====================

8 √ 9 √ 10 √ 12 √ 19  31 √ 34 √ 45  52  56  67  79 √ 85  98

                

算法五个基本特征:

1.有穷性

2.确定性

3.输入(可没有)

4.输出(必有)

5.可行性

时间复杂度:用计算量度量n(o)

例2 设数组a和b在前边部分已赋值,求如下两个n阶矩阵相乘运算算法的时间复杂度。

for(i=0;i<n;i++)
      for(j=0;j<n;j++)
  {
     c[i][j]=0;                            
     for(k=0;k<n;k++)
      c[i][j]=c[i][j]+a[i][k]*b[k][j];  
  }

解:设基本语句的执行次数为f(n),有f(n)=c1×n^2+ c2×n^3,因  T(n)= f(n)=c1×n^2+ c2×n^3≤c × n^3

其中c1 , c2 , c均为常数,所以该算法的时间复杂度为T(n)=O(n3)

各种不同数量级对应的值存在着如下关系:

O(1)<O(log2n)<O(n)<O(n*log2n)<O(n2)<O(n3)<O(2n)<O(n!)

上课总结-数据结构c++的更多相关文章

  1. 疫情下的在线上课方案:QQ直播+蓝墨云班课

    目录 疫情下的在线上课方案:QQ群视频(腾讯课堂)+蓝墨云班课 使用QQ进行直播 材料 QQ直播步骤 其他问题 使用蓝墨云班课加强学习效果 教材问题 我的直播-小学生硬笔书法基础 我的直播 - C程序 ...

  2. WEB学习总结 +数据结构

    HTML5  <h1>会员注册界面</h1><form action="process.aspx" method="post" n ...

  3. 《JAVA语言程序设计》上课笔记

    教学目标:1.使学生了解JAVA课程的性质.定位.作用:为什么要学习JAVA?让学生知道如何学好JAVA: 教学内容: 一.        问几个问题 1.             你们到这里来干什么 ...

  4. Java 数据结构与算法分析学习

    由于之前面试android的时候考到了很多关于java的知识,所以这次重温数据结构知识就打算用java来学习,毕竟android是以java为基础的,而且我现在学习的j2ee架构也是以java为基础的 ...

  5. 20162323周楠《Java程序设计与数据结构》第六周总结

    学号 2016-2017-2 <程序设计与数据结构>第六周学习总结 教材学习内容总结 继承:从已有类派生一个新类,是面向对象程序设计的一个特点 在Java中只支持单继承,不支持多继承 继承 ...

  6. 20162323周楠《Java程序设计与数据结构》第五周总结

    20162323周楠 2016-2017-2 <程序设计与数据结构>第五周学习总结 教材学习内容总结 1.面向对象软件设计的基本部分是确定程序中应该创建哪些类: 2.面向对象程序设计的核心 ...

  7. 20172328 2018-2019《Java软件结构与数据结构》第六周学习总结

    20172328 2018-2019<Java软件结构与数据结构>第六周学习总结 概述 Generalization 本周学习了第十章:非线性集合与数据结构--树.主要讨论了树的使用和实现 ...

  8. 20172328 2018-2019《Java软件结构与数据结构》第七周学习总结

    20172328 2018-2019<Java软件结构与数据结构>第七周学习总结 概述 Generalization 本周学习了第11章:二叉查找树.在本章中,主要探讨了二叉查找树的概念和 ...

  9. 20172306 2018-2019-2 《Java程序设计与数据结构》第九周学习总结

    20172306 2018-2019-2 <Java程序设计与数据结构>第九周学习总结 教材学习内容总结 无向图 图是由结点和这些结点之间的连接构成 就图来说,结点叫做顶点,结点之间的连接 ...

随机推荐

  1. 给安卓端调用的apk、图片下载接口

    package com.js.ai.modules.pointwall.action; import java.io.File; import java.io.FileInputStream; imp ...

  2. vsftpd设置被动模式

    完整配置 listen=yes listen_port= max_clients= max_per_ip= local_max_rate= anonymous_enable=no local_enab ...

  3. Angular4中利用promise异步加载gojs

    GoJS是一个实现交互类图表(比如流程图,树图,关系图,力导图等等)的JS库 gojs提供了angular的基本例子,不过是离线版 https://github.com/NorthwoodsSoftw ...

  4. DRF之注册器响应器分页器

    概要 url注册器 响应器 分页器 url注册器 通过DRF的视图组件,数据接口逻辑被我们优化到最剩下一个类,接下来,我们使用DRF的url控制器来帮助我们自动生成url,使用步骤如下: 第一步:导入 ...

  5. hadoop本地调试方法

    Mapreduce 是Hadoop上一个进行分布式数据运算和统计的框架,但是每次运行程序的时候都需要将程序打包并上传的集群环境中运行,这就会让程序的调试变得十分不方便.所以在这里写下这篇博客和大家交流 ...

  6. Java微信公众平台开发(十一)--开发中微信公众平台/开放平台/商户平台的关联

    转自:http://www.cuiyongzhi.com/post/55.html 微信公众平台(map.weixin.qq.com)/开放平台(open.weixin.qq.com)/商户平台(pa ...

  7. HTML_基础篇v2

    网站图片页面显示案例 1.需求分析 需要在浏览器中显示2张图片信息,效果如下: 2.技术分析 [图片标签]<img /> 属性: src:指图片的位置(路径) 路径的写法:绝对路径和相对路 ...

  8. Linux的基本指令--

     VIM简介: Vi有三种基本工作模式 1.命令模式 2.文本输入模式 3. 末行模式 VIM基本操作: 一 . 进入插入模式: i: 插入光标前一个字符 I: 插入行首 a: 插入光标后一个字符 A ...

  9. 客户端级别的渲染分析工具 dynaTrace

    dynaTrace Ajax Edition是一款很好的javaScript性能分析工具.目前支持IE和Firefox 2款浏览器. dynaTrace如图所示: 点击Click here to st ...

  10. XML数据格式简介

    ---------------siwuxie095                             XML 简介     XML,即 可扩展标记语言(Extensible Markcup La ...