單鏈錶鏈式結構的建立

Diy_os發表於2015-10-15
翻看之前的書本,總結一下資料結構方面的小知識點。關於單連結串列的順序結構就不說了,比較簡單。

點選(此處)摺疊或開啟


  1. 下面用C++來簡單的說明:

  2. #include<iostream>
  3. using namespace std;
  4. struct List {

  5. int data;
  6. struct List *next; //結點
  7. };


  8. List *CreateFirst() {

  9. List *first;
  10. first = new List; //建立頭結點,並初始化
  11. first->next = NULL;
  12. return first;
  13. }


  14. List *InitialList(List *first) { //用尾插法建立連結串列,並賦值


  15. List *p, *head;
  16. /* 首插法建立連結串列
  17. for (int i = 0; i < 10; i++) {
  18. p = new List;
  19. p->data = i;
  20. p ->next = first ->next;
  21. first ->next = p;

  22. }**/
  23. head = first;//這一步很關鍵,否則下面只能列印出來連結串列的最後一個結點的資料域

  24. for (int i = 0; i < 10; i++) {
  25. p = new List;
  26. p->data = i;
  27. head->next = p;
  28. head = p;
  29. head->next = NULL;

  30. }
  31. return first;
  32. }


  33. void PrintList(List *first) {

  34. do {

  35. first = first->next;
  36. cout << first->data << " ";

  37. } while (first != NULL);
  38. }
  39. int PrintLength(List *first) {

  40. int i = 0;
  41. for (List *q = first; q !=NULL ; q = q->next) {

  42. i++;
  43. }
  44. return i-1;
  45. }
  46. void main() {

  47. List *s, *t;
  48. s = CreateFirst();
  49. t = InitialList(s);
  50. PrintList(t);

  51. }



還有關於連結串列的插入刪除,今天先寫到這。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29876893/viewspace-1814394/,如需轉載,請註明出處,否則將追究法律責任。

相關文章