Практикум по курсу "Алгоритмизация и программирование". Часть 2. Андрианова А.А - 58 стр.

UptoLike

А.А. Андрианова, Л.Н. Исмагилов, Т.М. Мухтарова .
Рис 3.5. Случай потери «хвоста» списка.
// определение функции добавления в список
// элемента key на позицию pos
void AddList(List*& head, int key, int pos)
{
List* current,*help;
// добавление в начало списка
if(pos==1)
{
help=new List;
help->info=key;
help->next=head;
head=help;
return;
}
// поиск элемента, после которого требуется
// вставить новый элемент
current=head;
int i=1;
while(i!=pos-1 && current!=NULL)
{
i++;
current=current->next;
}
// позиция не найдена, список оказался коротким
if(current==NULL)
{
printf("Некорректная позиция\n");
return;
}
58
А.А. Андрианова, Л.Н. Исмагилов, Т.М. Мухтарова                     .




                          Рис 3.5. Случай потери «хвоста» списка.

    // определение функции добавления в список
    // элемента key на позицию pos
    void AddList(List*& head, int key, int pos)
    {
          List* current,*help;
          // добавление в начало списка
          if(pos==1)
          {
               help=new List;
               help->info=key;
               help->next=head;
               head=help;
               return;
          }

            // поиск элемента, после которого требуется
            // вставить новый элемент
            current=head;
            int i=1;
            while(i!=pos-1 && current!=NULL)
            {
                 i++;
                 current=current->next;
            }

            // позиция не найдена, список оказался коротким
            if(current==NULL)
            {
                 printf("Некорректная позиция\n");
                 return;
            }


                                            58