// Переменные
typedef struct node
{
int value;
struct node *next;
}mynode;
// Глобальные переменные (не обязательно).
mynode *head, *tail, *temp;
// Функции
void add(int value);
// Функция добавления новых узлов в связанный список
void add(int value)
{
temp = (mynode *) malloc(sizeof(struct node));
temp->next=(mynode *)0;
temp->value=value;
if(head==(mynode *)0)
{
head=temp;
tail=temp;
}
else
{
tail->next=temp;
tail=temp;
}
}
// Функция main ()
int main()
{
head=(mynode *)0;
// Construct the linked list.
add(1);
add(2);
add(3);
return(0);
}
Если у меня есть только указатель на узел, значение которого равно 3 (последний узел, как видно из вышеупомянутого кода), можем ли мы удалить его и сделать узел, значение которого равно 2 (вышеупомянутый код), в качестве последнего узла.