#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;
}
各位朋友,紅色部分有沒有更好的方法來替代 ???