如何在没有任何先前指针的情况下将元素插入c中的单链表中。
例如:我定义了日历和事件结构。两者都是链表。
calendar_1 ----> calendar_2 -----> calendar_3 ----> NULL
每个日历都指向另一个名为事件的链表[日历->事件]:
event_1 ----> event_2 ---> event_3 --- NULL
假设我想将event_6添加到calendar_1事件列表的开头(正好在event_1之前),我该如何编码?
我想我可以这样做:
Event *event_ptr = calendar_1->event;
event_ptr->next = event_6
event_6->next = event_ptr
但我认为这行不通。你能告诉我怎么做吗?
如果我正确理解了您的需求,以下内容应该满足您的需求:
// Put event 6 at the head of the list.
event_6->next = calendar_1->event;
// Update calendar 1 to point at the updated list.
calendar_1->event = event_6;