一、 解决方案
针对以上问题,本人利用C语言中的二级指针和强制类型转换方式,以及指针可以指向任意地址的特点,实现了在头结点类型与元素结点类型不同的情况下,可以有效解决以上问题的方案。为了方便描述,以下利用一个简单的案例来进行分析。为了验证本人提出解决问题的有效性,又不累述各种链表的应用,本人选用带头结点的循环链表来进行描述。
假设有一个整型数据构成的序列,用带头结点的循环链表进行存储,实现线性表的链式存储与操作。头结点用来存储该序列的最大值、最小值、平均值以及元素个数,并用一个指针域指向首元结点。下面利用这样的存储结构来实现链表的增、删、改、查、排序等基本操作。