反轉字符串操作

#include <iostream>
#include <string.h>
using namespace std;

struct mylist{
    int i;
    mylist* next;
};
mylist* reverList(mylist * list);
void main()
{
    mylist *testList=new mylist;
    mylist* outList;
    mylist *inputList;

    testList->next=NULL;
    for(int i=0;i<10;i++)
    {
        inputList=new mylist;
        inputList->i=i;

        inputList->next=testList->next;
        testList->next=inputList;
    }

    outList=reverList(testList);
    outList=outList->next;
    while(outList)
    {
        cout<<outList->i<<endl;
        outList=outList->next;
    }
}

mylist* reverList(mylist* list)
{
    mylist* newList=new mylist;
    newList->next=NULL;

    mylist* temp=list;
    mylist* temp2[11];
    temp=temp->next;
    int i=0;
    while(temp)
    {
        temp2[i]=temp;
        i++;
        temp=temp->next;
    }
    for(int i=0;i<10;i++)
    {
        temp2[i]->next=newList->next;
        newList->next=temp2[i];
    }

    return newList;
}

 

 

各位朋友,紅色部分有沒有更好的方法來替代 ???

發佈了10 篇原創文章 · 獲贊 5 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章