链表中数据最小的结点移到链首,统计单链表结点值等于定值的结点数,判断链表中心对称,合并链表,求集合C=A∩B

1.已知非空线性链表由list指出,链结点的构造由(data,link),data是数据域,link是链域。请写一算法,将链表中数据最小的那个链结点移到链表的最前面。要求:不得额外申请新的结点。

我们以带头结点的链表为例,因为要将数据最小链结点移到链表的最前面,也就是要在链表头插入一个新结点,这里我们需要两个指针,一个指向链表头,一个指向链表头指向的下一个链结点。将链表中最小数据的链结点移到最前面也就意味着要删除该链结点,同样需要两个指针,一个指向最小数据的链结点,一个指向(指向最小数据的链结点)的链结点,也就是最小数据链结点的前置链结点。算法实现如下:

void move(List &l){
   
    
    
	List pre = l,p = l->

猜你喜欢

转载自blog.csdn.net/weixin_43912621/article/details/122473073
今日推荐