想问一下,带有尾指针的循环链表如何通过头插法插入结点 要求时间复杂度至多为O(n) 求代码?

新手上路,请多包涵
void InsertNodeByHead_RearNode(LinkList *L_rear,int n){//利用头插法在带有尾结点的循环链表进行插入 
    LinkList Curnode = *L_rear;
    while(n--){             //这个不用考虑链表是否为空 
        LinkList p=(LinkList)malloc(sizeof(Lnode));
        p->next = (Curnode)->next->next;
        (Curnode)->next->next = p;
        scanf("%lf",&(p->date)); 
        
    }
} 


Status GetRearNode(LinkList *RearNode,LinkList *L){
    *RearNode = (*L);         //写这个的时候不禁会产生疑问 什么时候是要用到形参的二级指针? 
    while((*RearNode)->next != (*L)) *RearNode = (*RearNode)->next;
    return OK;
}
阅读 1k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题