数据结构基础笔记(1)

本文介绍了C语言中的两种主要数据结构——数组和链表。数组提供快速存取但插入删除效率低,而链表反之。链表分为单链表、双链表等类型,其操作需要通过头指针。结构体在函数传参中要注意效率问题,动态配置内存使用malloc函数。
摘要由CSDN通过智能技术生成

*C语言中只有定义了变量才会分配内存,定义数据类型不会分配内存。

一、连续存储(数组)

1、特点:元素类型相同,大小相等。

2、优缺点

优点:存取速度很快。

缺点:插入删除元素很慢,空间通常有限制,事先必须知道数组的长度,需要大块连续内存。

二、离散存储(链表)

1、定义:n个结点离散分配,彼此通过指针相连,每个结点只有一个前驱结点,只有一个后续结点,首结点没有前驱结点,尾结点没有后继结点。

*专业术语:

1)首结点   第一个有效结点

2)尾结点   最后一个有效结点

3)头结点   头结点的数据类型和首结点类型一样

                   第一个有效结点之前的结点

                   头结点并不存放有效数据

                   加头结点的目的是为了方便对链表的操作

4)头指针   指向头结点的指针变量

5)尾指针   指向尾结点的指针变量


*如果希望通过一个函数对链表进行处理,我们至少需要接收链表的哪些参数?

  只需要一个参数(头指针)--通过头指针可以推出链表的其他所有信息<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值