欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

基础实验3-2.2-单链表分段逆转-函数题

程序员文章站 2022-03-13 15:57:30
...

基础实验3-2.2-单链表分段逆转-函数题

解题代码

void K_Reverse(List L, int K) {
	int i, len = 0, cnt;
	List p = L, t, r, s, q = p->Next, temp;
	while (q) {
		q = q->Next;
		len++;
	}
	if (K > len || len == 0 || K <= 1) return 0;
	for (i = 0; i < len / K; i++) {
		cnt = 0;
		t = p->Next;
		r = t;
		s = r->Next;
		while (cnt < K - 1) {
			temp = s->Next;
			s->Next = r;
			r = s;
			s = temp;
			cnt++;
		}
		p->Next = r;
		t->Next = s;
		p = t;
	}
}

测试结果

基础实验3-2.2-单链表分段逆转-函数题

问题整理

1.卡了我好几天的问题框架,称之为ptrs模型,以纪念。