Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [C++]Разбор примера по слиянию списков


Автор: Knights 5.6.2010, 10:09
Здравствуйте. Я пытаюсь разобраться как решать задачи на С++ с слиянием списков. В интернете нашел статьи, но там только часть кода, может у кого-нибудь есть код целиком или кто может дописать чтобы программа работала.
Вот статья (Слияние списков) 
http://www.codenet.ru/progr/cpp/1/h22.php  

Вот часть кода
Код

 /*   слияние списков */
   double *merge(double *s, int low, int up, int l)
   {
   double *b,*c,v;
     int i,j,k;
     b=calloc(l,sizeof(double));
     c=calloc(up+1-l,sizeof(double));
     for(i=low;i<low+l;i++)
              b[i-low]=s[i];
     for(i=0;i<up-l;i++)
              c[i]=s[i+l+low];
     v=(b[l]=(c[up-l]=(s[low+l-1]>s[up-1]) ?
                            (s[low+l-1]+1) : (s[up-1]+1)));
     i=(j=0);
     k=low;
     while(b[i]<v||c[j]<v)
      { if(b[i]<c[j])  s[k]=b[i++];
        else           s[k]=c[j++];
        k++;
      }
     return (s);
   }

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)