void K_Reverse( List L, int K )
{
List p = L;
List q,s,t,tmp, r;
int len = 0;
q = p->Next;
while(q->Next)
{
len++;
q=q->Next;
}
int n=0;
int i = 0;
if(!len||K>len||K<=1)
{
return;
}
n = len/K;
while(n>0)
{
i = 1;
r = p->Next;
s = r->Next;
t = r;
while(i<K)
{
tmp = s->Next;
s->Next = r;
r = s;
s = tmp ;
i++;
}
t->Next = s;
p->Next = r;
p= t;
}
}
这个玩意儿还没过样例,前三个样例过不了,我再去想想再说。
还有一件事是中间不能有空格,指向的时候,比如P->Next不可以P - >Next。一个空格都不行