码迷,mamicode.com
首页 > 其他好文 > 详细

逆序链表

时间:2014-05-23 10:06:09      阅读:247      评论:0      收藏:0      [点我收藏+]

标签:style   class   blog   c   code   java   

bubuko.com,布布扣
#include<iostream>
using namespace std;

class node{
public:
    node():value(0),next(NULL){}
    ~node(){}
    int value;
    node* next;
};///be careful this ;

node* createlist(int a[],int n)
{
 node* startnode = new node[n];
 node* ret = startnode;
 for(int i = 0;i<n;i++)
 {
     startnode[i].value = a[i];
     if(i<n-1) 
         startnode[i].next = startnode + i + 1;
 }
 while(startnode)
 {
     cout<<" "<<startnode->value;
     startnode = startnode->next;
 }
 cout<<endl;
 return ret;
}

node* helper(node* head)
{
    if(head == NULL || head->next == NULL)
        return head; ///不管以后,只管现在
    node* n1 = head;
    node* n2 = n1->next;
    head = helper(head->next); 
    n2->next = n1;
    n1->next = NULL;
    return head;
}
 

int main()
{
    int a[] = {1,2,3,4,5,6,7,8,9};
    node * t = createlist(a,9);
    node* w =  helper(t);
    while(w)
    {cout<<" "<<w->value;
    w = w->next;
    }
}
bubuko.com,布布扣

这道题到最后也不是很清楚,所以必须要反复多看看。包裹递归实现和while实现!

逆序链表,布布扣,bubuko.com

逆序链表

标签:style   class   blog   c   code   java   

原文地址:http://www.cnblogs.com/berkeleysong/p/3737530.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!