数据结构--线性表初始化和插入数据

本文介绍了线性表这一基础数据结构,包括顺序存储的概念和动态数据处理。线性表是由零个或多个数据元素组成的有限序列,顺序存储方式使用连续内存空间。针对数组无法动态增长的问题,文章展示了如何在动态数组中插入数据的代码及运行结果。
摘要由CSDN通过智能技术生成

线性表

按存储方式不同

连续存储空间分组称为顺序存储
非连续存储空间称为链表

线性表基本概念

线性结构是一种最简单且常用的数据结构,基本的特点是节点之间满足线性关系。
线性表是零个或者多个数据元素的有限序列,数据元素之间是顺序的,数据元素个数是有限的,数据元素类型必须相同。

顺序存储

动态数据

默认数组不足之处:不能实现动态增长。动态数组就为解决上述问题。

首先我们要明白数组是一块连续的内存空间。
在这里插入图片描述

需要我们提前了解的是:
1、我们必须知道存储数据元素的空间首地址
2、元素的个数
3、数组容量

插入数据代码展示
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string.h>

#include<stdlib.h>

//1、先把所需的数据信息结构定义下来
struct DynamicArray
{
	//数组存储元素的空间首地址
	void **addr;
	//存储数据的内存中最大能够容纳的元素个数
	int capacity;//容量
	//当前存储数据的内存中有多少个元素
	int size;//大小
}

//初始化数组
struct DynamicArray *Init_DynamicArray(int capacity)
{
	if(capacity<=0)
	{
	   re
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值