几道有趣的面试题——单链表
摘要:问题一:链表的反序 1ListNode* reverseList(ListNode* head) 2{ 3 ListNode *p1, *p2 , *p3; 4 //链表为空,或是单结点链表直接返回头结点 5 if (head == NULL || head->next == NULL) 6 return head; 7 p1 = head; 8 p2 = head->next; 9 while (p2 != NULL)10 {11 p3 = p2->next;12 p2->next = p1;13 p1 = p2;14 p2 = p3;15 }16 head->
阅读全文
单链表需要注意的几个问题
摘要:1、结构体变量的定义:有两种方式: (1)structLnodeLinklist; (2)typedefstructLnodeLinklist.一般我们都采用第(2)种,这样的好处是:当我们再定义结构体变量时,可以用:Linklist p;2、链表的初始化intInitLinkList(Linklist**Lnode){ *Lnode=(Linklist)malloc(sizeof(Linklist));//*Lnode等于L,对与*Lnode的分配 空间相当与对主函数中的L分配空间。 if(!*Lnode) return0; (*Lnode)->next=NULL; return 1;
阅读全文