• 博客(0)
  • 资源 (1)

空空如也

单链表倒数第节点

# include<iostream> using namespace std; template <class T> struct Node { T data; Node *next; }; template<class T> class LinkList { public: LinkList(); LinkList(T a[],int n); int length(); void display(); void searchNode(int k); private: Node<T>*first; }; template<class T> LinkList<T>::LinkList(T a[],int n) { Node<T> *s; //Node<T> *date; first=new Node<T>; first->next=NULL; for(int i=0;i<n;i++) { s=new Node<T>; s->data=a[i]; s->next=first->next; first->next=s; } } template <class T> int LinkList<T>::length() { Node<T> *p; int count=0; p=first->next; while(p!=NULL) { p=p->next; count++; } return count; } template <class T> void LinkList<T>::display() { Node<T> *p; p=first->next; while(p!=NULL) { cout<<p->data<<" "; p=p->next; } cout<<endl; } template <class T> void LinkList<T>::searchNode(int k) { Node<T> *big,*little; big=first->next; little=first->next; for(int i=1;i<k;i++) { if(big->next!=NULL) big=big->next; } while(big->next!=NULL) { big=big->next; little=little->next; } cout<<"倒数第"<<k<<"个元素为"<<little->data<<endl; } void main() { int a[100]; int length; int l; int k=2; cout<<"请输入单链表的长度:"<<endl; cin>>length; for(int i=0;i<length;i++) { a[i]=i+1; } cout<<endl; LinkList<int> list(a,length); cout<<"单链表为:"<<endl; list.display(); l=list.length() ; cout<<"单链表长度为:"<<endl<<l<<endl; list.searchNode(k); }

2014-10-10

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除