void sortstruct node ptr struct node min = ptr; struct node min_pre = NULL; struct node first = NULL; struct node tail = NULL; struct node tmp = ptr; whileptr min = ptr; tmp = ptr; whiletmp-next
- 创建一个指向结构体指针的指针ptr。
- 创建一个指向结构体的指针min,并将其初始化为ptr指向的结构体。
- 创建一个指向结构体的指针min_pre,并将其初始化为NULL。
- 创建一个指向结构体的指针first,并将其初始化为NULL。
- 创建一个指向结构体的指针tail,并将其初始化为NULL。
- 创建一个指向结构体的指针tmp,并将其初始化为ptr指向的结构体。
- 进入while循环,判断ptr指向的结构体是否存在。
- 将min指向的结构体设为ptr指向的结构体。
- 将tmp指向的结构体设为ptr指向的结构体。
- 进入while循环,判断tmp指向的结构体的下一个结构体是否存在。
- 如果min指向的结构体的值大于tmp指向的结构体的下一个结构体的值,则将min指向该结构体,min_pre指向tmp。
- 将tmp指向下一个结构体。
- 如果min指向的结构体等于ptr指向的结构体,则将ptr指向下一个结构体。
- 否则,将min_pre指向的结构体的next指针指向min指向的结构体的next指针。
- 将min指向的结构体的next指针设为NULL。
- 如果first指向的结构体为空,则将first和tail都指向min指向的结构体。
- 否则,将tail指向的结构体的next指针指向min指向的结构体,然后将tail指向min指向的结构体。
- 将ptr指向first指向的结构体。
- 结束循环。
- 将ptr指向的结构体设为first指向的结构体
原文地址: http://www.cveoy.top/t/topic/ib6k 著作权归作者所有。请勿转载和采集!