有序表归并算是顺序表中的一种算法操作,是顺序表其他应用的基础,例如,一元稀疏多项式运算和稀疏矩阵。
有序表归并是指将两个已经排好顺序的顺序表A,B,合在一起组成一个新的有顺序的顺序表C。
算法操作可以分为:
1、为新的顺序表listMerge分配内存空间,并初始化C(指定大小等)
2、插入,先比较list1和list2的数据哪个大哪个小,并按照大小顺序逐个插入到listMerge中
3、当list1或list2中所有数据都插入完毕后,剩下另一个list2或list1中还有剩余的数据时,将所有剩余的数据全部插入到listMerge中(其中不用再比较大小,因为list1或list2中剩下的元素一定是排在listMerge最后一个元素后面,且list1或list2中剩下的元素都是有序排列的)
typedef struct {
int length;
int size;
int* listData;
}SqList;
SqList *listMerge(const SqList* list1, const