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

网站外包建设网站制作书籍推荐

网站外包建设,网站制作书籍推荐,seo网站设计招聘,江西省网站建设数据结构与算法—顺序表(1) 线性表顺序表概念与结构分类静态顺序表动态顺序表 动态顺序表的实现 线性表 线性表(linear list)是n个具有相同特性的数据元素的有限序列。线性表是⼀种在实际中⼴泛使⽤的数据结构,常⻅的…

数据结构与算法—顺序表(1)

  • 线性表
  • 顺序表
    • 概念与结构
    • 分类
      • 静态顺序表
      • 动态顺序表
    • 动态顺序表的实现

线性表

线性表(linear list)是n个具有相同特性的数据元素的有限序列。线性表是⼀种在实际中⼴泛使⽤的数据结构,常⻅的线性表:顺序表、链表、栈、队列、字符串…线性表在逻辑上是线性结构,也就说是连续的⼀条直线。但是在物理结构上并不⼀定是连续的,线性表在物理上存储时,通常以数组和链式结构的形式存储。

 这里引入一个例子具体化:比如在一个旅游景点排了一条很长的队伍买票,你脑子里会认为这条队伍是线性的笔直的,但是物理实际情况可能排的并非如此。

顺序表

概念与结构

概念:顺序表是⽤⼀段物理地址连续的存储单元依次存储数据元素的线性结构,⼀般情况下采⽤数组
存储。

但是顺序表和数组真的一样吗?又或者有什么关系?

其实他们的关系可以类比成两道一模一样的菜品,但是数组是在小餐馆的菜,而顺序表是星级饭馆里的菜,为什么这么说?

他们的底层一样都是西兰花相当于是数组,但是星级餐厅的菜品会有真多装饰品,这些装饰品就相当于图中的增加数据,删除数据这些额外功能等等。这就是他们的关系和区别。
在这里插入图片描述

分类

静态顺序表 和 动态顺序表

静态顺序表

使用定长的数组储存元素 缺陷:空间确定,容易造成不足或者浪费

动态顺序表

底层数组空间在不断的变化,能够根据需求来增大或者缩小,避免造成空间的短缺或者浪费

动态顺序表的实现

尾插法插入数据

头文件

在这里插入图片描述

实现文件

在这里插入图片描述

在这里插入图片描述
因为初始化会导致capacity的值为0,运用一个三目操作符进行判断,如果为0就给上4个空间, *2是建议最好以2的倍数增加开辟空间

拆解一下代码
在这里插入图片描述
因为realloc的 第二个参数是字节单位,返回类型是void*,所以capacity为0时给的四个空间是四个字节就是一个整数,所以容量大小需要乘保存在顺序表内的数据类型,所以也需要强转类型。
在这里插入图片描述
因为realloc可能会返回两种值,当申请空间成功会返回地址,失败后会返回NULL,将arr置为NULL,将所有数据清空,所以不能直接接受realloc的返回值,需要定义个临时的指针接受返回值

成功就让arr指向tmp的空间,capacity指向增加容量的空间newCapacity

测试文件

在这里插入图片描述
这就是一个动态顺序表的实现!

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

相关文章:

  • 北京城乡建设厅网站dell公司网站设计特色
  • 云盘可以做网站吗国内ui设计网站
  • 建设部勘察设计网站手机网站模板素材下载
  • 苏州做网站的公司哪家最好深圳市宝安建设工程交易中心
  • 建设网站经验直播营销策划方案
  • 建设网站的功能定位是什么原因保定seo
  • asp个人网站源码网站建设服务天软科技
  • 广告制作流程步骤广州网站优化步骤
  • 物流网站怎么做的邢台网站建设最新报价
  • 网站名称推荐ai室内设计生成软件
  • 开封北京网站建设app营销
  • 国外做问卷调查的网站5118数据分析平台
  • 影视网站开发工程师管理系统软件开发
  • 湖北地矿建设勘察公司网站艺术字体转换器在线转换器
  • 上林县建设局网站汕尾网站seo
  • 上虞区建设局网站深圳设计周展会2024时间
  • 建好网站后访问如何设计网页内容
  • 沧州模板建站平台市场调研报告范文大全
  • 济南优化网站关键词地产网站规划
  • 怎样做网站编辑如何建立免费网站的步骤
  • 寿光做网站的seo外链增加
  • 济南电商网站开发杭州标志设计公司
  • php网站建设模板网站后台管理系统是用什么做的
  • 青岛做网站公中山的网站建设公司
  • 柳州建网站wordpress 页眉
  • app设计网站模板佛山高明
  • 网站 用什么数据库房屋设计装修网站
  • 建立网站的目的和意义青岛优化网站技术
  • 石家庄建设企业网站做网站首页图片素材
  • 怎么做企业曝光引流网站二手书网站建设的目的