Thảo luận:Danh sách kề

Bách khoa toàn thư mở Wikipedia

[sửa] Danh sách liên kết

Sau đây là hai danh sách liên kết được thể hiện trong c++ chèn vào một phần tử ở cuối danh sách //list.cpp

  1. include <iostream.h>
  2. include <string.h>
  3. include <conio.h>

class Word {

  char ch;
  Word *Next;
  public:
  void AddWord();
  void ListWords();

}; Word *Head=NULL, *Tail=NULL; void Word::AddWord (){

  char chx;
  while(cin.get(chx) && chx!='\n'){
  Word *p=new Word;
  p->Next=NULL;
  p->ch=chx;
  if (Head==NULL)
     Head=p;
  else
     Tail->Next=p;
  Tail=p;
  }

} void Word::ListWords (){

  Word *p = Head;
  while (p!=NULL)
  {

cout<

ch; p=p->Next; } } void main () { clrscr(); Word d; d.AddWord (); d.ListWords (); getch(); } chèn một phần tử ở đầu danh sách //list1.cpp

  1. include <iostream.h>
  2. include <conio.h>

class Node{ public: char ch; Node* link; }; int main( ){ clrscr(); Node* p = NULL, *q = NULL, *k=NULL; char chx; while (cin.get(chx) && chx != '\n'){ p = new Node; p->ch = chx; p->link = q; q = p; } while (p != NULL){ cout.put(p->ch); p = p->link; } cout<<endl; k=q; while (k != NULL){ cout.put(k->ch); k = k->link; } cout << endl; getch(); return 0; }