程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> 鏈表反向,

鏈表反向,

編輯:C++入門知識

 

template <typename T>  
class Node   
{  
 public:  
  
 T data;  
 Node* next;  
};  
template <typename T>  
class link  
{  
public:  
link()  
{  
 head=new Node<T>();  
head->data=1;  
head->next=NULL;  
  
Node<T>* pNew=NULL;  
Node<T>* p=NULL;  
p=head;  
  
while(true)  
 {  
  T i;  
  cin>>i;  
  if(i!=-1)  
  {  
      pNew=new Node<T> ();  
      pNew->data=i;  
      pNew->next=NULL;  
      p->next=pNew;  
      p=pNew;  
  }  
  else  
  {  
  break;  
  }  
}  
}  
 void reverseLink()  
 {  
  assert(head!=NULL);  
  Node<T>* previouse=NULL;  
  Node<T>* p=head;  
  Node<T>* tmp=NULL;  
  while(p!=NULL)  
  {     
      tmp=p->next;  
      p->next=previouse;  
      previouse=p;  
      p=tmp;  
  
  }  
head=previouse;  
  
}  
  
void printLink()  
{  
 Node<T>* p=head;  
  
 while(p!=NULL)  
 {  
     cout<<p->data<<" ";  
     p=p->next;  
   
 }  
}  
private:  
Node<T>* head;  
};  
鏈表反向:    

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved