欢迎来到CClarence的博客!!

敲代码真的是一件令人感到上瘾的事情,在我二十多年的生活中,除了打DoTa,好像没有其他的另一件事也能让我如此乐此不疲。而前端恰恰是编程与界面的最前沿,它能让快速的让你感受到自己的成果,这是一件多么令人兴奋的事啊!!我希望在两年后我毕业的时候我能真的成为一位前端码农,在五年后我能成为一位NB的前端码农!!
----------CClarence写于2015年入冬。

001

逆向单项链表的算法

Node* reverseList(Node *first)
{
    Node* currentPos,*nextPos,previousPos;

    previousPos=NULL;                     //从第一个数据first开始,前一个是NULL;
    currentPos=first;
    nextPos=first->next;
    while(nextPos!=NULL)                    //循环,知道最后一个数是末尾为止
    {
        currentPos->next=previousPos;        //将现在这个数的钩子解开钩在前一个数上
        previousPos=currentPos;              //三个数分别赋给前一个数,相当于把要循环的三个数整体向后移了一位,接着循环
        currentPos=nextPos;
        nextPos=nextPos->next;
    }
    currentPos->next=previous;                //把最后一个数的钩子解开钩在前一个数上
    return currentPos;                        //返回最后一个数的位置
}

 

posted @ 2016-01-21 14:43  CClarence  阅读(340)  评论(0编辑  收藏  举报