freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

計算機仿真大賽二等獎?wù)撐睦眠z傳算法解決生產(chǎn)調(diào)度問題-資料下載頁

2025-06-07 05:19本頁面
  

【正文】 for(int j = 0。j m。j ++) { cint。 sum+=t。 } } int shiyingdu[110]。 int SUM = 0。 double gailv[110]。 for(int k = 1。k = 100。k ++) { cinshiyingdu[k]。 shiyingdu[k] = sum shiyingdu[k]。 coutshiyingdu[k] 。 } coutendl。 return 0。 } 附錄 三:計算一種方案 對應(yīng) 的被選中概率 的 代碼 include iostream include using namespace std。 int main() { freopen(,r,stdin)。 int shiyingdu[110]。 int gailv[110]。 int SUM = 0。 for(int k = 1。k = 100。k ++) { cinshiyingdu[k]。 SUM+=shiyingdu[k]。 } for(int g = 1。g = 100。g ++) { gailv[g] = shiyingdu[g]*。 coutgailv[g] 。 } coutendl。 return 0。 } 附錄 四:選擇、交叉和變異 過程 的代碼 include iostream include cstdio include cstdlib include include ctime using namespace std。 int an[110][10000]。//存放初始染色體組 int n,m。//共有 n 個作業(yè) m 個機器 int bn[110][10000]。//按照概率數(shù)組挑出 100 個染色體 int gailv[110]。//概率數(shù)組,表示每個染色體被挑中的概率 int rand()。//定義隨機數(shù)函數(shù) void srand( unsigned seed )。//定義種子 time_t time( time_t *time )。//返回系統(tǒng)時間 int main() { freopen(,r,stdin)。 cinnm。 for(int v = 1。 v = 100。 v ++) { cingailv[v]。 } int sum = 0。 int u。 for(int i = 1。 i = n。 i ++) { for(int j = 1。 j = m。 j ++) { cinu。 if(u)sum++。//記錄每條染色體共有多少個堿基 } } for(int k = 1。 k = 100。 k ++) { for(int j = 0。 j sum。 j ++) { cinan[k][j]。//根據(jù)堿基數(shù)輸入染色體 } } int t。 int top = 0。//新染色體組的類行指針 srand(time(0))。//建立種子 for(int i = 0。 i 100。 i ++) { t = rand() % 1000。 double tt = (double)t/。//隨機概率數(shù) top++。 for(int j = 1。 j = 100。 j ++) { if(gailv[j]=ttamp。amp。gailv[j1]tt) { for(int i = 0。 i sum。 i ++) { bn[top][i]=an[j][i]。//挑選 } break。 } } } int a,b。//交叉染色體的類行指針 int M[110]。//記錄該染色體是否配對過 for(int p = 1。 p =100。 p ++)M[p] = 0。//初始化 for(int k = 0。 k 100000。 k ++) { a = rand() % 100+1。 b = rand() % 100+1。//隨機生成 1~100 的兩個隨機數(shù) if(M[a] != 0amp。amp。M[b] != 0)continue。//如果配對過那么在隨機一組數(shù) else { M[a] = 1。 M[b] = 1。//標記已配對 int p。 p = rand()%sum。//交叉染色體的類列指針 int zhongjian。//中間變量 for(int i = p。i sum。i ++)//交叉 { zhongjian = bn[a][i]。 bn[a][i] = bn[b][i]。 bn[b][i] = zhongjian。 } } int jishu = 0。//記錄有多少個染色體已經(jīng)配對 for(int h = 1。h = 100。h ++) { if(M[h] == 1)jishu++。 } if(jishu == 100) { break。//如果都已經(jīng)配對那么退出 } } int q。//變異染色體的類行指針 for(int p = 1。 p =100。 p ++)M[p] = 0。//初始化 for(int g = 0。g 1000。g ++) { q = rand()%100+1。//隨機一個染色體 if(M[q] != 0)continue。 else { M[q] = 1。//標記已變異 loop: int c = rand()%sum。//隨機兩個堿基 int d = rand()%sum。 if(c == d)goto loop。//如果恰好兩個堿基相同那么重新隨機 else { int zhongjian = bn[q][c]。 bn[q][c] = bn[q][d]。 bn[q][d] = zhongjian。//交換 } } int sum1 = 0。//計數(shù) for(int i = 1。i = 100。i ++) { if(M[i] == 1) sum1++。 } if(sum1 == 5)break。//變異 5 個后停止變異 } return 0。 }
點擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1