typedef struct ListNode{
int data;
struct ListNode *next;
}ListNode;
//递归一
ListNode *ReverseList (ListNode *pHead, ListNode *nHead = NULL)
{
//每次取下第一个节点头插法创建新链表
//nHead为反转后链表的头节点
if(pHead == NUL...
分类:
其他好文 时间:
2014-08-05 19:36:50
阅读次数:
241
题目描述:
输入一个链表,反转链表后,输出链表的所有元素。
(hint : 请务必使用链表)
输入:
输入可能包含多个测试样例,输入以EOF结束。
对于每个测试案例,输入的第一行为一个整数n(0
输入的第二行包含n个整数t(0
输出:
对应每个测试案例,
以此输出链表反转后的元素,如没有元素则输出NULL。
样例输入:...
分类:
其他好文 时间:
2014-07-31 20:52:37
阅读次数:
245
链表反转,示例如下:偶数个:a->b->c->d->e->fe->f->c->d->a->b奇数个:a->b->c->d->e->f->gg->e->f->c->d->a->b#include
#include
#include
/************** start of stack *************/
#define STACK_SIZE 1024
char st...
分类:
其他好文 时间:
2014-07-27 11:33:12
阅读次数:
204
单链表的反转可以使用循环,也可以使用递归的方式
1.循环反转单链表
循环的方法中,使用pre指向前一个结点,cur指向当前结点,每次把cur->next指向pre即可。
代码:
# include
# include
using namespace std;
struct linkNode
{
int val;
linkNode *next;
linkNode(int...
分类:
编程语言 时间:
2014-07-06 11:08:28
阅读次数:
231
单链表的反转可以使用循环,也可以使用递归的方式
1.循环反转单链表
循环的方法中,使用pre指向前一个结点,cur指向当前结点,每次把cur->next指向pre即可。
代码:
class ListNode:
def __init__(self,x):
self.val=x;
self.next=None;
def nonrecurse(he...
分类:
编程语言 时间:
2014-07-06 00:24:52
阅读次数:
331
单链表反转(Singly Linked Lists in Java)博客分类:数据结构及算法Java代码packagedsa.linkedlist;publicclassNode{Edata;Nodenext;}Java代码packagedsa.linkedlist;publicclassRever...
分类:
编程语言 时间:
2014-06-28 17:47:36
阅读次数:
232
关于单向链表的反转想必大家都很熟了,以前一直用递归的方法写的,还是挺好写的,但是后来又在网上瞄了一眼非递归方法的实现,当时以为那个代码是正确的,也没验证,后来就不了了之。 昨天下午开始写这个代码,最后老发现出问题,今天早上起来理了一遍,终于发现症结所在。 举个例子吧: 1->2->3->4->5-....
分类:
其他好文 时间:
2014-06-27 19:27:30
阅读次数:
160
题目:给定一个单链表的头结点要求反转该链表并要求不能改变更改链表的结构分析:1. 假设一个链表如下 headNode -> node1 -> node2 -> node3 -> node4 -> NULL2. 则反转完这个链表之后,希望得到如下链表 NULL 3. 此时链表的头结点变成了node4,我们可以枚举整个链表,对每一个结点我们保存下前面一个结点和下面一个结点,然后更改结点内部...
分类:
其他好文 时间:
2014-06-15 18:39:28
阅读次数:
182
题目描述:输入一个链表,反转链表后,输出链表的所有元素。(hint :
请务必使用链表)输入:输入可能包含多个测试样例,输入以EOF结束。对于每个测试案例,输入的第一行为一个整数n(0next也就是p1来改变p1元素的位置,代码如下:Node
*p = head->next; Node *p1...
分类:
其他好文 时间:
2014-05-30 21:55:06
阅读次数:
349