题目:定义一个函数,输入一个链表的头结点,反转该链表并输出反转后链表的头结点。
解决与链表相关的问题总是有大量的指针操作,而指针操作的代码总是容易出错的。很多的面试官喜欢出链表相关的问题,就是想通过指针操作来考察应聘者的编码功底。为了避免出错,我们最好先进行全面的分析。在实际软件开发周期中,设计的时间通常不会比编码的时间短。在面试的时候我们不要急于动手写代码,而是一开始仔细分析和涉及,这将会给面...
分类:
编程语言 时间:
2015-08-01 17:19:10
阅读次数:
150
Reverse a linked list from position m to n. Do it in-place and in one-pass.
For example:
Given 1->2->3->4->5->NULL, m = 2 and n =
4,
return 1->4->3->2->5->NULL.
Note:
Given m, n satisfy t...
分类:
其他好文 时间:
2015-07-27 11:11:00
阅读次数:
113
/** * Definition for singly-linked list. * struct ListNode { * int val; * struct ListNode *next; * }; */struct ListNode* reverseList(struct Li...
分类:
其他好文 时间:
2015-07-25 18:19:20
阅读次数:
81
链表常见题型:
1.找到单链表的倒数第k个节点。
2.删除单链表中的某个结点(O(1))。
3.反转链表。
4.两个链表的第一个公共结点。
5.有环链表返回环路的开头节点(及判断是否有环)。
6.合并两个排序的链表。
7.删除链表中重复的结点。...
分类:
编程语言 时间:
2015-07-22 00:10:20
阅读次数:
279
问题描述:
链表A和B
A: 1->2->3->4
B: a->b->c->d
请逆转交替合并两个链表,示例结果如下:
4->d->3->c->2->b->1->a...
分类:
其他好文 时间:
2015-07-21 06:50:46
阅读次数:
130
题目1518:反转链表时间限制:1 秒内存限制:128 兆特殊判题:否提交:2567解决:948题目描述:输入一个链表,反转链表后,输出链表的所有元素。(hint : 请务必使用链表)输入:输入可能包含多个测试样例,输入以EOF结束。对于每个测试案例,输入的第一行为一个整数n(0 2 #includ...
分类:
其他好文 时间:
2015-07-15 22:19:00
阅读次数:
149
给定一个常数K以及一个单链表L,请编写程序将L中每K个结点反转。例如:给定L为1→2→3→4→5→6,K为3,则输出应该为3→2→1→6→5→4;如果K为4,则输出应该为4→3→2→1→5→6,即最后不到K个元素不反转。输入格式:每个输入包含1个测试用例。每个测试用例第1行给出第1个结点的地址、结点...
分类:
其他好文 时间:
2015-07-12 18:57:00
阅读次数:
93
Struct ListNode
{
int m_nKey;
ListNode* m_pNext;
};
ListNode* ReverseList(ListNode* pHead)
{
ListNode* pReversedHead = NULL;
ListNode* pNode = pHead;
ListNode* pPrev =...
分类:
其他好文 时间:
2015-07-08 19:08:14
阅读次数:
128
Reverse Nodes in k-Group
Given a linked list, reverse the nodes of a linked list k at a time and return its modified list.
If the number of nodes is not a multiple of k then left-out nodes in the...
分类:
其他好文 时间:
2015-07-07 17:04:14
阅读次数:
170
链接:http://www.nowcoder.com/pat/6/problem/4051题目描述给定一个常数K以及一个单链表L,请编写程序将L中每K个结点反转。例如:给定L为1→2→3→4→5→6,K为3,则输出应该为3→2→1→6→5→4;如果K为4,则输出应该为4→3→2→1→5→6,即最后不...
分类:
其他好文 时间:
2015-07-05 16:21:47
阅读次数:
106