- 相关推荐
链表面试题-一个链表的结点结构
struct Node

{
int data ;
Node *next ;
};
typedef struct Node Node ;
(1)已知链表的头结点head,写一个函数把这个链表逆序 ( Intel)
Node * ReverseList(Node *head) //链表逆序
{
if ( head == NULL || head->next == NULL )
return head;
Node *p1 = head ;
Node *p2 = p1->next ;
Node *p3 = p2->next ;
p1->next = NULL ;
while ( p3 != NULL )
{
p2->next = p1 ;
p1 = p2 ;
p2 = p3 ;
p3 = p3->next ;
}
p2->next = p1 ;
head = p2 ;
return head ;
}
(2)已知两个链表head1 和head2 各自有序,请把它们合并成一个链表依然有序,链表面试题-一个链表的结点结构
,资料共享平台
《链表面试题-一个链表的结点结构》(https://www.unjs.com)。(保留所有结点,即便大小相同)
Node * Merge(Node *head1 , Node *head2)
{
if ( head1 == NULL)
return head2 ;
if ( head2 == NULL)
return head1 ;
Node *head = NULL ;
Node *p1 = NULL;
Node *p2 = NULL;
if ( head1->data < head2->data )
{
head = head1 ;
p1 = head1->next;
p2 = head2 ;
}
else
{
head = head2 ;
p2 = head2->next ;
p1 = head1 ;
}
Node *pcurrent = head ;
while ( p1 != NULL && p2 != NULL)
{
if ( p1->data <= p2->data )
{
pcurrent->next = p1 ;
【链表面试题-一个链表的结点结构】相关文章:
求职动机面试题07-30
有趣而刁钻的面试题10-22
20个经典面试题04-12
宝洁英语面试题03-18
销售行业面试题07-26
面试题:讲解实习经历09-19
面试题:谈谈你的缺点10-07
银行面试题目及答案09-19
面试题:团队智力型01-16
上海奥美面试题目09-22