• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            華劍緣
            一切都在這個過程中獲得,將那些目標埋藏于心中
            posts - 19,comments - 20,trackbacks - 0

            實驗一、Joseph問題

            ??? 問題描述 :約瑟夫(Joseph)問題的一種描述是:編號為12, 。。。,nn個人按順時針方向圍坐一圈,每人持有一個密碼(正整數)。一開始任選一個正整數作為報數上限值m,從第一個人開始按順時針方向自1開始順序報數,報到m時停止報數。報到m的人出列,將他的密碼作為新的m值,從他在順時針方向上的下一個人開始重新從1報數,如此下去,直到所有人全部出列為止。試設計一個程序求出出列順序。

            這是我們數據結構第一個實驗題目。大部分都用C語言寫。我用C++寫的,寫到一半編譯通過了,run的時候出了問題。還沒有寫完,只把用用到的類寫了出來。第一次這樣寫,不知道那里除了問題。

            代碼:

            ??1 #include? " iostream.h "
            ??2 // #include?"String.h"
            ??3
            ??4
            ??5
            ??6 class ?PersonList;
            ??7 class ?Joseph;
            ??8
            ??9 class ?Person {
            ?10 // friend?PersonList;
            ?11 private :
            ?12 ??? char ?num;
            ?13 ??? int ?value;
            ?14 ?? // ?Person?*next;
            ?15 public :
            ?16 ?Person? * next;
            ?17 ?Person();
            ?18 ????Person( char , int );
            ?19 ????Person(Person?? & A);
            ?20 }
            ;
            ?21
            ?22 Person::Person( char ?A, int ?Val)
            ?23 {
            ?24 ????num = A;
            ?25 ????value = Val;
            ?26
            ?27 }

            ?28 Person::Person(Person? & B)
            ?29 {
            ?30 ????num = B.num;
            ?31 ????value = B.value;
            ?32 ????next = B.next;
            ?33 }

            ?34 class ?PersonList {
            ?35 friend?Joseph;
            ?36 public :
            ?37 ????Person? * head, * tail;
            ?38 ? int ?sum;
            ?39 public :
            ?40 ????PersonList();
            ?41 ???? ~ PersonList();
            ?42 ???? void ?initialPL();
            ?43 ???? void ?insertPl(PersonList? & Pl,Person?x);
            ?44 ???? void ?DeleteBlPerson(Person?y);
            ?45 ???? bool ?NEmpty();
            ?46 }
            ;
            ?47
            ?48 PersonList::PersonList()
            ?49 {
            ?50 ?Person? * head = new ?Person;
            ?51 ?Person? * tail = head;
            ?52
            ?53 }

            ?54
            ?55 void ?PersonList::insertPl(PersonList? & PL,Person?x)
            ?56 {
            ?57 ????Person? * p = new ?Person(x);
            ?58 ????PL.tail -> next = p;
            ?59 ????PL.tail = p;
            ?60 ????PL.tail -> next = head;
            ?61
            ?62 }

            ?63 void ?PersonList::DeleteBlPerson(Person?y)
            ?64 {
            ?65 ????Person?p =* y.next;
            ?66 ?y.next = y.next -> next;
            ?67
            ?68 }

            ?69
            ?70
            ?71 class ?Joseph {
            ?72 private :
            ?73 ?PersonList?List;
            ?74
            ?75 public :
            ?76 ? char ? * JosephList;?? //用來存放輸出序列
            ?77 ?Joseph();
            ?78
            ?79
            ?80 }
            ;
            ?81
            ?82 Joseph::Joseph()
            ?83 {
            ?84 ?PersonList?P;
            ?85 ?P.initialPL();
            ?86 ?cout << " 人數?: " << endl;
            ?87 ?cin >> P.sum;
            ?88 ? for ( int ?i = P.sum;i > 0 ;i -- )
            ?89 ? {
            ?90 ??cout << " 代號 " << endl;
            ?91 ?? char ?a;
            ?92 ??cin >> a;
            ?93 ??cout << " " << endl;
            ?94 ?? int ?x;
            ?95 ??cin >> x;
            ?96 ??Person?Z(x,a);
            ?97 ??P.insertPl(P,Z);
            ?98 ?}

            ?99
            100
            101 }

            102
            103
            104
            105 int ?main()
            106 {
            107 ????Joseph?B;
            108 ????cout << " 輸入 " ;
            109
            110
            111 ???? return ? 0 ;
            112 }

            113



            ?

            posted on 2006-12-12 22:59 華劍緣 閱讀(458) 評論(3)  編輯 收藏 引用

            FeedBack:
            # re: 關于約瑟夫環的問題,編不下去了,那位幫忙看看
            2006-12-12 23:10 | Dain
            今晚不想了
            明天寫個來  回復  更多評論
              
            # re: 關于約瑟夫環的問題,編不下去了,那位幫忙看看
            2006-12-13 09:20 | 華劍緣
            @Dain
            十分感謝  回復  更多評論
              
            # re: 關于約瑟夫環的問題,編不下去了,那位幫忙看看
            2006-12-13 14:45 | Dain
            sorry,沒有采用你用的那種結構

            #include <iostream>

            using namespace std;

            void Josephus(int *Child,int n,int m)
            {
            int i = -1,j = 0,k = 1;
            while(1)
            {
            for(j = 0;j < m;)
            {
            i = (i + 1) % n;
            if(Child[i] != -1)
            j++;
            }

            if(k == n)
            break;
            cout << Child[i] << "\t";
            m = Child[i];
            Child[i] = -1;
            k++;
            }
            cout << Child[i] << endl; // the last
            }

            int main()
            {
            int *allChild,j,k,l;
            cout << "Person Number and Password:" << endl << "\t";
            cin >> j >> k;

            if((allChild= new int[j])!=NULL)
            {
            for(l = 0;l < j;l++)
            {
            cout << l + 1 << "\t";
            allChild[l] = l + 1;
            }
            cout << endl;
            }

            Josephus(allChild,j,k);

            return 0;
            }  回復  更多評論
              
            97久久综合精品久久久综合| 久久伊人精品一区二区三区| 99久久久精品| 国产高清国内精品福利99久久| 久久久国产精华液| 精品伊人久久大线蕉色首页| 久久久精品午夜免费不卡| 欧美激情精品久久久久久久九九九| 亚洲国产综合久久天堂| 天堂久久天堂AV色综合| 国产亚州精品女人久久久久久 | 久久精品无码一区二区三区日韩 | 中文国产成人精品久久不卡| 97久久精品国产精品青草| 日本高清无卡码一区二区久久 | 91精品国产色综合久久| 无码精品久久一区二区三区 | 久久久久久久精品妇女99| 亚洲国产成人久久精品动漫| 久久精品国产久精国产一老狼| 久久青青草原国产精品免费| 久久久亚洲AV波多野结衣| 精品久久久久久无码中文字幕| 午夜久久久久久禁播电影| 2021国产精品久久精品| 久久精品国产色蜜蜜麻豆| 久久精品一区二区国产| 日韩精品久久无码人妻中文字幕| 久久国产热这里只有精品| 久久精品视频网| 亚洲一区中文字幕久久| 99久久精品毛片免费播放| 久久精品国产精品亚洲毛片| 久久精品九九亚洲精品| 久久精品人人做人人爽电影蜜月| 麻豆成人久久精品二区三区免费| 成人久久免费网站| 国内精品久久久久久99| 高清免费久久午夜精品| 伊人久久大香线焦综合四虎| 99久久久久|