2020考研计算机《数据结构(C语言版)》详解答案(11)
2019.05.19 17:21

  2020年计算机考研复习已经开始,新东方在线在此整理了2020考研计算机《数据结构(C语言版)》详解答案(11),希望能帮助大家!

  假设以两个元素依值递增有序排列的线性表A和B分别表示两个集合(即同一表中的元素值各不相同),现要求另辟空间构成一个线性表C,其元素为A和B中元素的交集,且表C中的元素有依值递增有序排列。试对单链表编写求C的算法。

  解:

  // 将A、B求交后的结果放在C表中,并删除B表

  Status ListCross_L(LinkList &A,LinkList &B,LinkList &C)

  {

  LinkList pa,pb,qa,qb,pt;

  pa=A;

  pb=B;

  qa=pa; // 保存pa的前驱指针

  qb=pb; // 保存pb的前驱指针

  pa=pa->next;

  pb=pb->next;

  C=A;

  while(pa&&pb){

  if(pa->datadata){

  pt=pa;

  pa=pa->next;

  qa->next=pa;

  free(pt);

  }

  else

  if(pa->data>pb->data){

  pt=pb;

  pb=pb->next;

  qb->next=pb;

  free(pt);

  }

  else{

  qa=pa;

  pa=pa->next;

  }

  }

  while(pa){

  pt=pa;

  pa=pa->next;

  qa->next=pa;

  free(pt);

  }

  while(pb){

  pt=pb;

  pb=pb->next;

  qb->next=pb;

  free(pt);

  }

  pb=B;

  free(pb);

  return OK;

  }


MORE+

    相关阅读 MORE+

    版权及免责声明
    1.凡本网注明"稿件来源:新东方在线"的所有文字、图片和音视频稿件,版权均属北京新东方迅程网络科技有限公司所有,任何媒体、网站或个人未经本网协议授权不得转载、链接、转贴或以其他方式复制发表。已经本网协议授权的媒体、网站,在下载使用时必须注明"稿件来源:新东方在线",违者本网将依法追究责任。
    2.本网末注明"稿件来源:新东方在线"的文/图等稿件均为转载稿,本网转载出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如其他媒体、网站或个人从本网下载使用,必须保留本网注明的"稿件来源",并自负版权等法律责任。如擅自篡改为"稿件来源:新东方在线”,本网将依法追究责任。
    3.如本网转载稿涉及版权等问题,请作者致信weisen@xdfzx.com,我们将及时外理

    Copyright © 2011-202

    All Rights Reserved