伊莉討論區

標題: 徵求串列高手,解決卡點問題ˊˋ [打印本頁]

作者: ook5002000    時間: 2009-4-7 11:18 PM     標題: 徵求串列高手,解決卡點問題ˊˋ

提示: 作者被禁止或刪除 內容自動屏蔽
作者: include    時間: 2009-4-9 01:32 AM

  1. #include <iostream>
  2. #include <conio.h>
  3. using namespace std;
  4. struct Node {
  5. int n;
  6. Node *next;
  7. };
  8. void main()
  9. {
  10. Node *head = NULL, *p, *q,*z;
  11. int tmp, sum = 0;
  12. cin >> tmp;

  13. while (tmp != -1) {

  14.   p = new Node();
  15.   p->n = tmp;
  16.   p->next = NULL;

  17.   if (head == NULL) {

  18.    head = p;
  19.    //q = p;

  20.   } else if (head->n <= tmp) {   //右

  21.    /*head->next = p;
  22.    q = head;*/

  23.    q = head;
  24.    while(q->next != NULL && q->next->n <= tmp)
  25.         q = q->next;
  26.    p->next = q->next;
  27.    q->next = p;

  28.   } else if (head->n >= tmp) {   //左

  29.    /*p->next = q;
  30.    head->next = q;
  31.    q->next = NULL;
  32.    head = p;*/

  33.    p->next = head;
  34.    head = p;

  35.   }

  36.   cin >> tmp;

  37. }

  38.   for (p = head; p != NULL; p = p->next) {
  39.   sum += p->n;
  40.   cout << "\n" << p->n;
  41. }

  42. //cout << "總和為:" << sum;

  43. _getch();
  44. }
複製代碼





歡迎光臨 伊莉討論區 (http://a401.file-static.com/) Powered by Discuz!