C语言实现严蔚敏数据结构
NaLaEur
这个作者很懒,什么都没留下…
展开
-
算法2.0 线性表顺序存储的实现
线性表的特点单链表强调元素在逻辑上紧密相邻,所以首先想到用数组存储。但是普通数组有着无法克服的容量限制,在不知道输入有多少的情况下,很难确定出一个合适的容量。对此,一个较好的解决方案就是使用动态数组。首先用malloc申请一块拥有指定初始容量的内存,这块内存用作存储单链表元素,当录入的内容不断增加,以至于超出了初始容量时,就用realloc扩展内存容量,这样就做到了既不浪费内存,又可以让单...原创 2018-08-16 10:02:40 · 412 阅读 · 0 评论 -
算法2.1 实现一个新的集合 A = A ∪ B
题目: 假设利用两个线性表 LA 和 LB,分别表示两个集合A 和 B,现要求新的集合A = A ∪ B核心代码段:void ListUnion (SeqList * LA, SeqList * LB){ int La_len = 0; int Lb_len = 0; int i = 0; ElemType val = 0; La_l...原创 2018-08-17 09:34:25 · 2386 阅读 · 0 评论 -
算法 2.2 合并链表 LA 和 LB
题目: 已知线性表LA 和 LB 中的数据元素按值非递减有序排列,现要求LA 和 LB 归并为一个新的线性表 LC, 且 LC 中的数据元素仍然按照非递减有序排列假设: LA = (3, 5, 8, 11) LB = (2, 6, 8, 9, 11, 15, 20) 则: LC = (2, 3, 5, 6, 8, 8, 9, 11, 15, 20)void MergeLi...原创 2018-08-17 10:35:38 · 4898 阅读 · 0 评论