数据结构与算法基础:从 ADT 到线性表

发布于 — 2024 年 07 月 06 日
#C语言 #数据结构 #算法

跟随青岛大学王卓老师系统学习数据结构,包含 C 语言实现。

数据结构与算法基础 (Data Structures and Algorithms) 课程链接

课程资源青岛大学王卓 - 数据结构与算法


📘 P5 抽象数据类型的表现和实现

核心案例:以复数的四则运算为例,包括加减乘除的相关函数。


📘 P16 形参和实参的相关表示

  • 指针传递:可以用指针通过函数内部形参来影响外部实参。
  • 值传递:不用指针就不能通过函数内部形参来影响外部实参。

📘 P17 线性表的顺序表示和实现

1. 线性表的动态实现

  • 初始化线性表 文件66行:

    1
    
    L->elem = (ElemType *) malloc(sizeof(ElemType) * MAX_SIZE);
    

    原理:通过 malloc 函数来为动态的线性表分配空间。


📘 P23 线性表的链式表示

1. 单链表的基本实现

  • 核心逻辑:基于指针构造的链式存储结构,每个结点包含数据域与指针域。
1
2
3
4
5
// 补充示意:单链表结点结构
typedef struct LNode {
    ElemType data;
    struct LNode *next;
} LNode, *LinkList;