无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

【ROSALIND】【練Python,學生信】51 用翻轉過程重建進化歷程

2021-01-12 21:46 作者:未琢  | 我要投稿

如果第一次閱讀本系列文檔請先移步閱讀【ROSALIND】【練Python,學生信】00 寫在前面 ?謝謝配合~

題目:

重建進化歷程(Reconstructing Evolutionary Histories)

Given: Two permutations π and γ, each of length 10.

所給:一對排列π和γ,長度都為10。

Return: The reversal distance drev(π,γ), followed by a collection of reversals sorting π into γ. If multiple collections of such reversals exist, you may return any one.

需得:由π變?yōu)棣玫姆D距離drev(π,γ),以及由π變?yōu)棣玫姆D路徑的集合,如果有多條符合要求的路徑,給出一條即可。

?

測試數(shù)據(jù)

1 2 3 4 5 6 7 8 9 10

1 8 9 3 2 7 6 5 4 10

測試輸出

2

4 9

2 5

?

生物學背景

? ? ? ? 在06 DNA序列Hamming距離的計算中,我們了解到:檢查不匹配的符號,就可以推斷出兩個基因串之間進化路徑上發(fā)生的一系列點突變。在42 翻轉距離與廣度優(yōu)先搜索中,我們知道基因組還可以通過倒位法發(fā)生進化。同理,列舉出翻轉過程,我們能推理出一個序列是怎樣通過倒位逐步變成另一個的,并可計算出反轉距離。

? ? ? ? 本問題就是要求我們除了算出翻轉距離,還要給出翻轉過程。翻轉可以由發(fā)生翻轉的兩個端點處的位置進行標記,例如,將(4,1,2,6,3,5)轉換為(4,1,3,6,2,5)的翻轉用[3,5]進行表示。

?

思路

? ? ? ?與42 翻轉距離與廣度優(yōu)先搜索相同,這道題的解答同樣復制于網(wǎng)絡(https://github.com/fernandoBRS/Rosalind-Problems/blob/master/sort.py),且復制于同一人,所以很多內容不再重復,閱讀本部分代碼前請務必回顧一下42 翻轉距離與廣度優(yōu)先搜索的內容。

? ? ? ?本題只在之前的基礎上增加了給出翻轉過程的要求,因此代碼也是在上次的基礎上添加了滿足這個需求的內容。簡單來說,這里用history變量在逐層深入的過程中把翻轉過程記錄了下來,具體不再贅述,詳見代碼及注釋。

??

代碼



【ROSALIND】【練Python,學生信】51 用翻轉過程重建進化歷程的評論 (共 條)

分享到微博請遵守國家法律
娱乐| 开化县| 石狮市| 遂川县| 乌鲁木齐县| 许昌市| 江达县| 辉南县| 江都市| 金沙县| 肃宁县| 永泰县| 恩平市| 墨脱县| 曲阳县| 孙吴县| 齐河县| 桃源县| 陆良县| 玛多县| 卫辉市| 邓州市| 桂东县| 盖州市| 铜山县| 图们市| 溧水县| 安达市| 渑池县| 宣恩县| 邓州市| 利辛县| 慈溪市| 三河市| 深水埗区| 大渡口区| 湄潭县| 淮滨县| 闸北区| 黔西| 宝山区|