• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      最優(yōu)單循環(huán)賽程編程思路及MATLAB實(shí)現(xiàn)

      2019-03-26 03:22:22謝曉敏
      關(guān)鍵詞:參賽隊(duì)賽程場次

      謝曉敏

      (川北幼兒師范高等??茖W(xué)校 初等教育系,四川 廣元 628017)

      n支球隊(duì)在同一場地上進(jìn)行單循環(huán)比賽,為了保證公平性,按照文獻(xiàn)[1,2]的編排方法,推廣其結(jié)論可得:n(n≥5)為奇數(shù)時,每兩場相隔場次數(shù)為;n(n≥5)為偶數(shù)時,相隔場次數(shù)為[3]

      當(dāng)球隊(duì)數(shù)目較少時,可以手工編排賽程,而球隊(duì)數(shù)目較多時,手工編排就會耗時費(fèi)力。若能將編排方法用程序?qū)崿F(xiàn),就會省時又省力。

      筆者將參賽隊(duì)數(shù)目分為奇數(shù)和偶數(shù)分別進(jìn)行討論,理清編程思路,用MTLAB編程給出賽程編排表,并計算出每個參賽隊(duì)參加的場次數(shù)和每兩場相隔場次數(shù)以及總場次和。

      一、參賽隊(duì)數(shù)目為奇數(shù)

      (一)構(gòu)造推理法

      1.構(gòu)造推理編排法簡述

      單循環(huán)賽中每兩個隊(duì)伍都要進(jìn)行一場比賽。對于1號參賽隊(duì)而言,它要和其余的隊(duì)伍進(jìn)行(n-1)場比賽,按照 1-2,1-3,…,1-n的順序安排(n-1)輪的第一場比賽。最后一輪只安排一場比賽,其余每輪場比賽。從第1輪到第(n-2)輪的最后一場比賽分別為:2-n,2-3,2-4,…,2-(n-1)。剩余的比賽平均的插入第 1輪至第(n-2)輪,每輪場。使每個球隊(duì)的間隔場次數(shù)達(dá)到。

      2.編程思路

      (1)將賽程編排表儲存在矩陣A中,當(dāng)參賽隊(duì)有n個時,矩陣A有行,2(n-1)列。第1列與第2列同行的參賽隊(duì)進(jìn)行一場比賽,自上而下形成第一輪賽程安排。第3列與第4列,以此類推,第(2n-3)列與第2(n-1)構(gòu)成的第(n-1)輪只有一場比賽。矩陣A的初始值為零矩陣。

      (2)安排每輪的第一場比賽,即矩陣A的第一行。奇數(shù)列為1號參賽隊(duì),偶數(shù)列從2號隊(duì)遞增到n號隊(duì)。再安排每輪的最后一場比賽,即矩陣A的最后一行。為了后面計算間隔方便,最后一行的第1列為2,第二列為n號參賽隊(duì),其余奇數(shù)列從3號隊(duì)遞增到(n-1)號隊(duì),偶數(shù)列為2號參賽隊(duì)。后面的安排中只安排第1至第(n-2)輪的比賽。

      (5)其余未安排的位置都是最大號參賽隊(duì)。

      3.MATLAB程序

      4.賽程安排

      將上面的程序保存為gztlf.m文件。在命令窗口輸入〉〉A(chǔ)=gztlf(21),運(yùn)行程序,根據(jù)程序結(jié)果得n=21時的賽程安排如下:

      表1 n=21的構(gòu)造推理法賽程安排

      (二)圖論法

      1.圖論編排法簡述

      將n支球隊(duì)代表的點(diǎn)按順時針方向排列成一個“圈”[4],每兩個點(diǎn)之間連一條線,就形成了一個無向完全圖Kn,n支球隊(duì)的單循環(huán)賽對應(yīng)于此圖Kn,Kn有條邊,對應(yīng)n支球隊(duì)的場比賽。將場比賽分成輪,每輪n場比賽。每輪的編排方法基本類似。

      首先確定奇數(shù)個參賽隊(duì)中不參加比賽的隊(duì)伍,可以是任意一個隊(duì)伍。每輪首先不參加比賽的隊(duì)伍必須為同一個隊(duì)伍。剩余隊(duì)伍數(shù)目為偶數(shù)個,以不參賽隊(duì)所處點(diǎn)為參照點(diǎn),安排分別從順、逆時針方向看,處在“圈”上對稱位置的兩個隊(duì)伍完成一場比賽,按照由近及遠(yuǎn)的順序,每隊(duì)只能參加一場比賽。共計場比賽。

      然后從未參加比賽的隊(duì)伍代表的點(diǎn)走到每輪第一場比賽中的隊(duì)伍,按照先向小號走再向大號走的原則,為第場比賽。沿每輪第一場比賽的路徑行走,走完后向每輪第二場比賽中的隊(duì)伍行走,仍然先向小號走再向大號走,增加一條路徑,每增加一條路徑則安排一場比賽。如此反復(fù),直到走到每輪第場比賽號數(shù)較大的頂點(diǎn),共安排場比賽。從剛才結(jié)束的頂點(diǎn)走到起始未參加比賽的隊(duì)伍所處頂點(diǎn),再安排一場比賽,即第n場比賽。

      2.編程思路

      (1)將賽程編排表儲存在矩陣A中,當(dāng)參賽隊(duì)有n個時,矩陣A有n行,(n-1)列。第1列與第2列同行的參賽隊(duì)進(jìn)行一場比賽,自上而下形成第一輪賽程安排。第3列與第4列,以此類推,第(n-2)列與第(n-1)列形成第輪比賽。

      (2)規(guī)定:每輪起始未參加比賽的隊(duì)伍是號數(shù)最大的隊(duì)伍。第行奇數(shù)列的參賽隊(duì)從1依次增加到。偶數(shù)列的參賽隊(duì)為n。第n行奇數(shù)列參賽隊(duì)為n,偶數(shù)列參賽隊(duì)從依次增加到(n-1)。

      3.MATLAB程序

      4.賽程安排

      將上面的程序保存為tulun.m文件。在命令窗口輸入〉〉A(chǔ)=tulun(21),運(yùn)行程序,根據(jù)運(yùn)行結(jié)果得n=21時的賽程安排如下:

      表2 n=21的圖論法賽程安排

      表2 n=21的圖論法賽程安排(續(xù))

      二、參賽隊(duì)數(shù)目為偶數(shù)

      (一)改進(jìn)的貝格爾編排法簡述

      著名的貝格爾編排法[5]編排的賽程共有n-1輪,第一輪按照1至n的順序逆時針按U形走向分成均等兩邊。n號隊(duì)安排在每輪的第一場比賽中,第一輪在右邊,第二輪在左邊,第三輪回到右邊,如此反復(fù),第n-1輪又回到右邊。從第二輪起,將前一輪右下角的參賽隊(duì)伍提到本輪第一場比賽中來,其余參賽隊(duì)伍按照逆時針輪轉(zhuǎn)。貝格爾編排法不能達(dá)到最優(yōu)的場次間隔。

      改進(jìn)的貝格爾編排法從第二輪起,將前一輪第二場比賽右邊的參賽隊(duì)提到本輪第一場比賽中來,其余的隊(duì)伍編排方法不變。

      (二)編程思路

      1.將賽程編排表儲存在矩陣A中,當(dāng)參賽隊(duì)有n個時,矩陣A有行,2(n-1)列。第1列與第2列同行的參賽隊(duì)進(jìn)行一場比賽,自上而下形成第一輪賽程安排。第3列與第4列,以此類推,第(2n-3)列與第2(n-1)列構(gòu)成第(n-1)輪賽程安排。

      2.安排每輪的第一場比賽,即矩陣A的第一行。第 2,3,6,7,…,2(n-1)列,均為 n 號參賽隊(duì),第1列為1號參賽隊(duì),其余列按照從左到右的順序,參賽隊(duì)從(n-1)至2的順序依次遞減。

      (三)MATLAB程序

      (四)賽程安排

      將上面的程序保存為gjb.m文件。在命令窗口輸入〉〉A(chǔ)=gjb(20),運(yùn)行程序,根據(jù)運(yùn)行結(jié)果得n=20時的賽程安排如下:

      表3 n=20的改進(jìn)貝格爾編排法賽程安排

      三、每個參賽隊(duì)的參賽場次、兩場間隔和總場次數(shù)

      (一)編程思路

      1.輸入?yún)①愱?duì)數(shù)目n和賽程安排表儲存矩陣A,輸出每個參賽隊(duì)的參賽場次矩陣P,間隔場次數(shù)矩陣J,其中從第一行到第n行分別為1號到n號參賽隊(duì)的參賽場次和間隔場次。輸出每個參賽隊(duì)的總間隔場次數(shù)向量D。

      2.先按奇數(shù)列和偶數(shù)列分別計算每個參賽隊(duì)參加的場次數(shù),儲存在矩陣T中。若T中有0,去除0后,儲存在P中。若T中沒有0,對于矩陣P的行,按從小到大的順序排列,即對應(yīng)每個參賽隊(duì)參加的場次數(shù)從小到大的順序。對于矩陣P,按行計算間隔場次數(shù)后儲存在矩陣J中輸出,即為每個隊(duì)的間隔場次數(shù)。對于矩陣J按行求和后儲存在向量D中輸出,即為每個參賽隊(duì)的總場次數(shù)。

      (二)MATLAB程序

      (三)結(jié)果驗(yàn)證

      1.構(gòu)造推理法

      在命令窗口輸入〉〉n=21;A=gztlf(n);[P J D]=jg(n,A),運(yùn)行程序,根據(jù)運(yùn)行結(jié)果得n=21時每個參賽隊(duì)參加的場次數(shù)、每兩場間隔場次數(shù)和總場次和如下:

      表4 n=21時參賽隊(duì)參加的場次數(shù)

      表5 n=21時每兩場間隔場次數(shù)和總場次和

      2.圖論法

      在命令窗口輸入〉〉n=21;A=tulun(n);[P J D]=jg(n,A),運(yùn)行程序,根據(jù)運(yùn)行結(jié)果,筆者發(fā)現(xiàn)圖論法得到的每個參賽隊(duì)參加的場次數(shù)、每兩場間隔場次數(shù)和總場次與構(gòu)造推理法的結(jié)論表4、表5行不同而已。

      3.改進(jìn)的貝格爾編排法

      在命令窗口輸入〉〉n=20;A=gjb(n);[P J D]=jg(n,A),運(yùn)行程序,根據(jù)運(yùn)行結(jié)果得n=20時每個參賽隊(duì)參加的場次數(shù)、每兩場間隔場次數(shù)和總場次和如下:

      表6 n=20時參賽隊(duì)參加的場次數(shù)

      表7 n=20時每兩場間隔場次數(shù)和總場次和

      表7 n=20時每兩場間隔場次數(shù)和總場次和

      猜你喜歡
      參賽隊(duì)賽程場次
      江麓“戰(zhàn)車”助力中國隊(duì)國際軍事比賽再獲大捷
      “蘇沃洛夫突擊”項(xiàng)目圓滿收官江麓“戰(zhàn)車”助中國隊(duì)創(chuàng)歷史最好成績
      長江上游高洪水期泥沙輸移特性
      賽程過半,湖南高速領(lǐng)先
      賽程回顧
      基于運(yùn)行場次用時誤差的載人設(shè)備故障預(yù)警可視化研究
      排考場次分配方法及其SQL實(shí)現(xiàn)
      2016歐洲杯小組賽賽程
      新民周刊(2016年23期)2016-06-20 15:44:20
      地鐵觀影指南
      電影故事(2015年33期)2015-09-06 01:05:30
      2013—14賽季歐冠小組賽賽程
      足球之夜(2013年9期)2013-04-29 00:44:03
      洛浦县| 阿瓦提县| 牡丹江市| 交口县| 南投县| 特克斯县| 建昌县| 苍梧县| 新乡县| 胶州市| 兖州市| 乌什县| 兴安县| 朝阳区| 黎城县| 盐城市| 克东县| 清水河县| 连江县| 东辽县| 广丰县| 漠河县| 古田县| 乌兰察布市| 新安县| 韶山市| 蕲春县| 阳东县| 大悟县| 广丰县| 灌阳县| 拉萨市| 彰化市| 普陀区| 红河县| 郧西县| 民权县| 辽阳县| 大荔县| 钟山县| 太仓市|