编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛  
全能 ASP / PHP / ASP.NET 主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付学习型 ASP/PHP/ASP.NET 主机 30元/年
发新话题
打印

麻烦各位了

麻烦各位了

6.实现两个链表的合并
基本功能要求:
(1)建立两个链表A和B,链表元素个数分别为m和n个。
(2)假设元素分别为(x1,x2,…xm),和(y1,y2, …yn)。把它们合并成一个线形表C,使得:
当m>=n时,C=x1,y1,x2,y2,…xn,yn,…,xm
当n>m时,C=y1,x1,y2,x2,…ym,xm,…,yn
输出线形表C
(3) 用直接插入排序法对C进行升序排序,生成链表D,并输出链表D。
测试数据:
(1) A表(30,41,15,12,56,80)
      B表(23,56,78,23,12,33,79,90,55)
(2) A表(30,41,15,12,56,80,23,12,34)
      B表(23,56,78,23,12)

TOP

怎么没人帮帮我阿啊..
我是真的很急啊...
谢谢各位帮帮忙啊..
希望大家一定要在明天之前帮我解决啊..
谢谢啦..

TOP

TOP

main()
{
int m,n,k;
int array a[m],b[n];
int array c[m+n];
  creat Array();
   k=m-n;
  if(k>0)
linka_b();
  else
   if(k<0)
  linkb_a();
    else
  linkab();
print();
}     
  create Array() /*初始化数组函数*/
    { int i,t;
      int Arr[t];
       for(i=0;i<=t-1;i++)
         scanf("%2d",&Arr[i]);
     }
  linka_b()/* 这个是连接数组a,b的函数 */
   { int i,x,y;
     int a[m],b[n],c[m+n];
      for(i=0;i<m+n;i++)
       for((x=0&&y=0);(x<m&&y<n);(x++&&y++))  
        c[i]=a[x];
        c[i+1]=b[y];
    }
  linkb_a()
    {
      这一部分同上!
     }
  linkab()
    {
      这个是你未考虑到的,也是一样的道理!
     }
  print()
     {int i;
       for(i=0;i<m+n;i++)
        printf("%2d",c[i]);
       }
可能还是有不少的疏忽,而且你的那个快速插入排序我现今帮不了你,疏漏之处敬请见谅!
ASP
JAVA
SQL
C/C++
VBASIC
..........

TOP

发新话题