数据结构与算法_Python_C完整教程目录:https://www.cnblogs.com/nickchen121/p/11407287.html

更新、更全的《数据结构与算法》的更新网站,更有python、go、人工智能教学等着你:https://www.cnblogs.com/nickchen121/p/11407287.html

  • 有块地方存储数据
  • 有块地方存储指针——下一个结点的地址

线性结构之习题选讲-ReversingLinkedList

二、单链表的逆转

线性结构之习题选讲-ReversingLinkedList

/* c语言实现 */

Ptr Reverse(Ptr head, int K)
{
  cnt = 1;
  new = head->next;
  old = new->next;
  while (cnt < K) {
    tmp = old->next;
    old->next = new;
    new = old; old = tmp;
    cnt++;
  }
  head->next->next = old;
  return new;
}

取巧:用顺序表存储,先排序,再直接逆序输出。

对上述取巧的解决方案:在内存里多加几个没用的结点。

三、测试数据

pta测试中,这道题的测试数据主要关心一下几点:

  • 有尾巴不反转
  • 有多余结点

3.1 边界测试

  • 地址取到上下界
  • 正好全反转
  • K=N全反转
  • K=1不用反转
  • 最大(最后剩K-1不反转)、最小N

相关文章:

  • 2021-11-29
  • 2021-08-19
  • 2021-11-18
  • 2021-04-22
猜你喜欢
  • 2021-04-24
  • 2022-02-06
  • 2021-11-07
  • 2022-02-07
  • 2021-08-01
  • 2021-11-24
  • 2021-12-02
相关资源
相似解决方案