精品日本亚洲一区二区三区,伊人久久狼人色精品无码 ,日鲁夜鲁天天鲁视频,国产精品久久亚洲,秋霞理论理论福利院久久,国产日韩欧美视频一区二区三区,色九九,国产精品美女久久久久久免费 ,九九干,韩国精品一区二区三区

考研論壇

標(biāo)題: (Mutimedia Dr)第1次算法設(shè)計(jì)作業(yè) [打印本頁(yè)]

作者: 598788523    時(shí)間: 2012-10-31 13:38
標(biāo)題: (Mutimedia Dr)第1次算法設(shè)計(jì)作業(yè)
本帖最后由 * 于 2012-10-31 13:45 編輯


2 Stable Matching
import java.util.ArrayList;
import java.util.List;
public class StableMatch {
      privateint[][] mPref;
      privateint[][] fPref;
      privateint[] pos;//儲(chǔ)存位置
      privateint count;
      publicStableMatch()
      {
      }
      publicStableMatch(int n)
      {
             mPref= new int[n][];
             fPref= new int[n][];
             count= n;
             for(int i = 0; i < n; i++) {
                    mPref= randomIni(n);
                    fPref= randomIni(n);
             }
      }
      publicint[] randomIni(int n)
      {
             int[]result = new int[n];
             Listlist = new ArrayList(n);
             for(inti=0; i<n;i++)
             {
                    list.add(i);
             }
             for(int i = 0; i < n; i++) {
                    intindex = (int)(Math.random() * list.size());
                    result= (Integer)list.get(index);
                    list.remove(index);
             }
             returnresult;
      }
      publicstatic void main(String[] args) {
             //TODO Auto-generated method stub
             while(true)
             {
                    StableMatchsm = new StableMatch(3);
                    int[][]result = sm.doMatch(true);
                    int[][]result1 = sm.doMatch(false);
                    if(resultTest(result[0],result1[0]))
                           break;
             }
      }
      publicint[][] doMatch(boolean flag)
      {
             int[][]result = new int[2][count];
             pos= new int[count];
             for(int i = 0; i < pos.length; i++) {
                    pos= -1;
             }
             for(int i = 0; i < result.length; i++) {
                    for(int j = 0; j < result.length; j++) {
                           result[j] = -1;
                    }
             }
             //Initiallyall man, and wom are free.
             if(!flag)
             {
                    int[][]temp = fPref;
                    fPref= mPref;
                    mPref= temp;
             }
             intmcount = findFree(result);
             while(mcount!= -1)
             {
                    intmpos = mPref[mcount][++pos[mcount]]; //向第mpos個(gè)女的求婚
                    if(result[1][mpos]== -1) //第mpos個(gè)女的沒(méi)有訂婚
                    {
                           result[0][mcount]= mpos;
                           result[1][mpos]= mcount;
                           mcount= findFree(result);
                           continue;
                    }else//第mpos個(gè)女的訂婚了
                    {
                           if(!judge(mpos,mcount,result))//第mpos比當(dāng)前的好
                           {
                                  result[0][result[1][mpos]]= -1; //結(jié)束訂婚
                                  result[1][mpos]= mcount;//與mcount訂婚
                                  result[0][mcount]= mpos;//與mpos訂婚
                                  mcount= findFree(result);
                           }
                    }
             }
             returnresult;
      }
      publicint findFree(int[][] result)
      {
             intindex = -1;
             for(int i = 0; i < result[0].length; i++) {
                    if(result[0]==-1)
                    {
                           index= i;
                           break;
                    }
             }
             returnindex;
      }
      //判斷向windex求婚的人是否比當(dāng)前的男的好
      publicboolean judge(int windex,int mindex,int[][] result)
      {
             booleanflag = false;
             intcur = result[1][windex];
             for(int i = 0; i < mPref[windex].length; i++) {
                    if(cur== mPref[windex])
                    {
                           flag= false;
                           break;
                    }
                    if(mindex== mPref[windex])
                    {
                           flag= true;
                           break;
                    }
             }
             returnflag;
      }
      publicstatic boolean resultTest(int[] a,int b[])
      {
             for(int i = 0; i < a.length; i++) {
                    if(i!= b[a])
                    {
                           returnfalse;
                    }
             }
             returntrue;  }
}
對(duì)于每個(gè)事例都有file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image002.png,是錯(cuò)誤的,舉一個(gè)反例。
男生的喜好矩陣
[[0, 1, 2], [1, 2, 0], [2, 0,1]]
女生的喜好矩陣
[[0, 1, 2], [1, 0, 2], [0, 1,2]]
男生主動(dòng)的匹配
[[1, 2, 0], [2, 0, 1]]
女生主動(dòng)的匹配
[[0, 1, 2], [0, 1, 2]]
從上可以看出男生主動(dòng)第0個(gè)男生與第1個(gè)女生匹配,而女生主動(dòng)第一個(gè)女生與第一個(gè)男生匹配因此對(duì)于每個(gè)事例都有file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image002.png,是錯(cuò)誤的
4 Complexity Analysis
算法實(shí)現(xiàn):
public class HHindex {
    publicstatic void main(String[] args) {
       //TODO Auto-generated method stub
       Stringstr = "8,4,3,5,6,2";
       String[]temp = str.split(",");
       int[]array = new int[temp.length];
       int[]result = new int[temp.length];
       for(int i = 0; i < array.length; i++) {
           array= Integer.parseInt(temp);
           result= 1;
       }
       for(int i = 1; i < result.length; i++) {
           if(array> array[i-1])
           {
              intn = result[i-1];
              result+=result[i-1];
              while(i-1-n>=0&&array > array[i-1-n])
              {
                  result+=result[i-n];
                  n+=result[i-n];
              }
           }
       }
       System.out.println("ok!!!");
    }
}

[attach]622230[/attach]
作者: panda2029    時(shí)間: 2013-4-27 16:56
本來(lái)還好。。??戳艘院笸蝗缓茴^疼。。。怎么搞。。。暈。。。
作者: 可可米露    時(shí)間: 2013-5-15 17:00
panda2029 發(fā)表于 2013-4-27 16:56
本來(lái)還好。。??戳艘院笸蝗缓茴^疼。。。怎么搞。。。暈。。。

噗。哈哈。。。。。
我覺(jué)得還好啊。。。
因?yàn)樯耨R都不懂╮(╯▽╰)╭

作者: panda2029    時(shí)間: 2013-5-15 17:05
可可米露 發(fā)表于 2013-5-15 17:00
噗。哈哈。。。。。
我覺(jué)得還好啊。。。
因?yàn)樯耨R都不懂╮(╯▽╰)╭

算法。。。虐人。。。我神經(jīng)衰弱了。。。

作者: 可可米露    時(shí)間: 2013-5-15 17:08
panda2029 發(fā)表于 2013-5-15 17:05
算法。。。虐人。。。我神經(jīng)衰弱了。。。

所以改行是對(duì)滴~~~


這個(gè)算法的結(jié)果是神馬??有結(jié)果么??

作者: 可可米露    時(shí)間: 2013-5-15 17:09
是個(gè)神馬故事?????白雪公主???????
作者: panda2029    時(shí)間: 2013-5-15 17:10
因?yàn)槊總€(gè)女生最中意的男生都不同,所以只要讓女生們都選擇跟自己最中意的男生在一起,她們就都不會(huì)有和其他男生私奔的想法。雖然男生們會(huì)表示略苦逼啊!仍然不失為一個(gè)stable matching。。。。。  

作者: panda2029    時(shí)間: 2013-5-15 17:11
第一天早上:所有男生都向自己最中意的女生表白。  

第一天中午:每個(gè)女生都被表白了n次(可能是0次)之后,拒絕了相對(duì)不太中意的那n-1位,hold住其中最中意的那位。。。即暫時(shí)不答應(yīng)也不拒絕  

第一天晚上,被拒絕的男生們?cè)谧约旱膒reference列表中劃掉了那個(gè)拒絕他的人。。。  



第二天早上:所有沒(méi)有被hold住的男生都向自己最中意的女生(無(wú)視已經(jīng)被劃掉的)表白。  

第二天中午:女生們?cè)谀切┫蛩戆椎哪猩鸵呀?jīng)hold住的那男生中選擇最中意的一位,拒絕掉其他的。  

第二天晚上:被拒絕的男生們?cè)谧约旱膒reference列表中劃掉拒絕了自己的人。。。。  



第三天,重復(fù)同樣的過(guò)程。。。  

第四天。。。。  

。。。。。。。  


作者: panda2029    時(shí)間: 2013-5-15 17:12
這樣的過(guò)程是有限的,不會(huì)一直循環(huán)下去。

在這樣的過(guò)程結(jié)束之后,每個(gè)女生都會(huì)hold住一個(gè)男生。即在那一天之后沒(méi)有男生可以繼續(xù)表白了,這時(shí)女生們終于都向那個(gè)男生說(shuō)了yes!  



按照這樣的過(guò)程,最后不會(huì)存在一對(duì)男女有私奔傾向  

即完成了stable matching。  


作者: panda2029    時(shí)間: 2013-5-15 17:12
師兄。。。我說(shuō)的對(duì)么?男女穩(wěn)定匹配。。。。
作者: panda2029    時(shí)間: 2013-5-15 17:13
翻頁(yè)。。。強(qiáng)迫癥。。。囧。。。
作者: 可可米露    時(shí)間: 2013-5-15 17:18
哎。。。。。。。難道是我缺乏常識(shí)??
作者: panda2029    時(shí)間: 2013-5-15 17:30
博士大哥。。。想表達(dá)“一個(gè)蘿卜一個(gè)坑”。。。不用如此費(fèi)勁。。。折騰啊。。。那天太累我沒(méi)仔細(xì)瞅。。。今天頓悟。。。這個(gè)么。。。囧了個(gè)囧。。。
作者: panda2029    時(shí)間: 2013-5-15 17:40
可可米露 發(fā)表于 2013-5-15 17:18
哎。。。。。。。難道是我缺乏常識(shí)??

不是。。。此人高端黑。。。哼。。。把我家可可虐傻了。。。打他。。。

作者: 可可米露    時(shí)間: 2013-5-15 17:51
panda2029 發(fā)表于 2013-5-15 17:40
不是。。。此人高端黑。。。哼。。。把我家可可虐傻了。。。打他。。。
...

→ →交流太困難了╮(╯▽╰)╭

作者: 可可米露    時(shí)間: 2013-5-15 17:55
panda2029 發(fā)表于 2013-5-15 17:30
博士大哥。。。想表達(dá)“一個(gè)蘿卜一個(gè)坑”。。。不用如此費(fèi)勁。。。折騰啊。。。那天太累我沒(méi)仔細(xì)瞅。。。今 ...

。。。。。。。。難道以后師父的LP,叫他吃飯的時(shí)候,也要寫(xiě)個(gè)算法→ →


腫么那么有意思。。。。。。

作者: panda2029    時(shí)間: 2013-5-15 18:16
可可米露 發(fā)表于 2013-5-15 17:55
。。。。。。。。難道以后師父的LP,叫他吃飯的時(shí)候,也要寫(xiě)個(gè)算法→ →

所以。。。得有更高端的妹紙。。。才能搞定你那極其高端的師父。。。囧了個(gè)囧。。。

作者: 可可米露    時(shí)間: 2013-5-15 18:31
panda2029 發(fā)表于 2013-5-15 18:16
所以。。。得有更高端的妹紙。。。才能搞定你那極其高端的師父。。。囧了個(gè)囧。。。
...

哈哈,以后誰(shuí)跟著我就慘了。。一花錢(qián)我就讓他做會(huì)計(jì)分錄。。。。

作者: panda2029    時(shí)間: 2013-5-15 18:52
可可米露 發(fā)表于 2013-5-15 18:31
哈哈,以后誰(shuí)跟著我就慘了。。一花錢(qián)我就讓他做會(huì)計(jì)分錄。。。。

一分錢(qián)都跟他算清楚了。。。

作者: 可可米露    時(shí)間: 2013-5-15 18:54
panda2029 發(fā)表于 2013-5-15 18:52
一分錢(qián)都跟他算清楚了。。。

→ →年底還讓他做報(bào)表,做財(cái)務(wù)分析。


想想就覺(jué)得好有意思。。。

作者: 可可米露    時(shí)間: 2013-5-15 18:56
翻頁(yè)。。。
作者: AirCrystal    時(shí)間: 2013-5-15 20:07
{:3_102:}以前,其實(shí)了解過(guò)一點(diǎn)點(diǎn)的,后來(lái),精力不允許了,就放棄了。。。




歡迎光臨 考研論壇 (http://www.5522pp.com/) Powered by Discuz! X3.2