C语言核心编程与数据结构实战

📚 共计 30 章节
第01章
C语言概述
C语言历史与特点 · 应用领域 · MinGW/GCC搭建 · Hello World · 编译流程
入门环境
第02章
基本数据类型与变量
整型 · 浮点型 · 字符型 · 变量定义 · const/#define · sizeof
基础常量
第03章
运算符与表达式
算术/关系/逻辑/位/赋值/逗号 · 类型转换(隐式与显式)
运算位操作
第04章
输入输出与格式化
printf/scanf · getchar/putchar · gets/puts · 缓冲区问题
I/O格式化
第05章
流程控制(一)
if · if-else · else if阶梯 · switch-case · 三目运算符
分支条件
第06章
流程控制(二)
while · do-while · for · 嵌套循环 · break/continue · goto
循环跳转
第07章
数组(一)
一维数组定义/初始化 · 访问/遍历 · 冒泡排序 · 线性查找
数组排序
第08章
数组(二)
二维数组定义/初始化 · 遍历 · 矩阵运算 · 多维数组简介
二维矩阵
第09章
函数(一)
定义/声明 · 值传递 · 返回值 · return · 函数原型
函数参数
第10章
函数(二)
局部/全局变量 · 作用域/生命周期 · static · 递归(阶乘/斐波那契)
作用域递归
第11章
指针(一)
指针概念 · &与* · 指针算术运算 · 指针与数组
指针地址
第12章
指针(二)
指针数组/数组指针 · 多级指针 · 函数指针 · 回调 · void*
进阶回调
第13章
字符串与字符串函数
字符数组/指针 · 输入输出 · strlen/strcpy/strcat/strcmp · 查找
字符串库函数
第14章
结构体与联合体
struct · 结构体数组/指针 · 嵌套 · union · enum
结构体联合
第15章
动态内存管理
malloc/calloc/realloc/free · 内存泄漏 · 动态数组/结构体
堆内存动态
第16章
预处理与宏定义
#include/#define/#if/#ifdef · 宏函数 · 条件编译 · #pragma
预处理
第17章
文件操作(一)
FILE* · fopen/fclose · fgetc/fputc · fgets/fputs
文件字符流
第18章
文件操作(二)
fscanf/fprintf · fread/fwrite · fseek/ftell/rewind
格式化二进制
第19章
数据结构基础
概念与分类 · 时间/空间复杂度 · 大O表示法 · 常见复杂度对比
理论复杂度
第20章
线性表(一)
线性表定义/ADT · 顺序表(动态数组) · 插入/删除 · 优缺点
顺序表线性
第21章
线性表(二)
单链表节点 · 创建/遍历 · 插入/删除 · 反转
单链表指针
第22章
线性表(三)
双向链表 · 循环链表 · 多项式相加 · 静态链表
双向循环
第23章
栈与队列(一)
栈定义/ADT · 顺序栈 · 链式栈 · 括号匹配/表达式求值
LIFO
第24章
栈与队列(二)
队列定义/ADT · 循环队列 · 链式队列 · BFS应用
队列FIFO
第25章
树与二叉树(一)
树定义/术语 · 二叉树性质 · 顺序/链式存储 · 四种遍历
遍历
第26章
树与二叉树(二)
BST查找/插入/删除 · AVL概念 · 哈夫曼树与编码
BST哈夫曼
第27章
图(一)
图定义/术语 · 邻接矩阵/邻接表 · DFS与BFS
DFS
第28章
图(二)
最小生成树(Prim/Kruskal) · 最短路径(Dijkstra/Floyd) · 拓扑/关键路径
MST最短路径
第29章
查找算法
顺序/二分/插值/分块查找 · 哈希查找与冲突处理
查找哈希
第30章
排序算法
冒泡/选择/插入/希尔/快排/归并/堆排序 · 比较与选择
排序算法