2023/09/19
今天主要学习了有关数据结构中两个有序线性表的有序合并。
对两个有序线性表的主要方法就是比较两表中元素的大小。其原理是从表头开始两表中的数按表中的序列顺序(从小到大或者从大大小)进行比较,将较小(较大)的数接入新的表中,同时将填入的数的表和新表移向下一个位置。循环重复以上操作直到其中一个表的元素全部填入。最后将另一个表中剩余的元素全部移入新表的最后。
首先对于顺序表,由于顺序表本身在调整数据,插入数据时的不灵活,需要另外开辟一个新表来填入符合条件的元素。在最后还需要对剩余表中的各个表的剩余元素进行遍历。
而对于链表,不需要开辟新的空间来对新表进行存储。链表需要使用一个新的头结点的指针指向两表中随意一个表的头结点,然后开始对两链表中的值进行比较,符合条件的数只需修改指针的指向即可。最后休息另外一表的头结点的内存需要被释放。