演算法基礎2 DNA 配對

2021-10-04 23:53:50 字數 1394 閱讀 8946

寫乙個函式,為 dna 中的鹼基配對。這個函式只接收乙個表示鹼基的字串為引數,最後返回完成配對的二維陣列。

鹼基對 由一對鹼基組成。鹼基有四種,分別為 a(腺嘌呤)、t(胸腺嘧啶)、g(鳥嘌呤)和 c(胞嘧啶)。配對原則是:a 與 t 配對,c 與 g 配對。我們需要根據這個原則對傳入的所有鹼基進行配對。

對於每個傳入的鹼基,我們應採用陣列的形式展示配對結果。其中,傳入的鹼基需要作為陣列的第乙個元素出現。最終返回的陣列中應當包含引數中每乙個鹼基的配對結果。

比如,傳入的引數是 gcg,那麼函式的返回值應為 [[「g」, 「c」], [「c」,「g」],[「g」, 「c」]]

pairelement(「atcga」)應該返回[[「a」,「t」],[「t」,「a」],[「c」,「g」],[「g」,「c」],[「a」,「t」]]。

pairelement(「ttgag」)應該返回[[「t」,「a」],[「t」,「a」],[「g」,「c」],[「a」,「t」],[「g」,「c」]]。

pairelement(「ctcta」)應該返回[[「c」,「g」],[「t」,「a」],[「c」,「g」],[「t」,「a」],[「a」,「t」]]。

方法一:

function

pairelement

(str)};

// loops through the input and pair.

for(

var i =

0; i < str.length; i++

)return paired;

}// test here

pairelement

("gcg"

);

方法二:

function

pairelement

(str)

//split string into array of characters

var arr = str.

split(""

);//map character to array of character and matching pair

return arr.

map(x =>

[x,pairs[x]])

;}//test here

pairelement

("gcg"

);

以上內容**fcc

function

pairelement

(str)

return str.

split(''

).map(i=>)}

pairelement

("gcg"

);

基礎演算法 陣列配對

description 陣列配對任務描述 給你乙個長度為n的陣列a和乙個正整數k,問從陣列中任選兩個數使其和是k的倍數,有多少種選法對於陣列a1 1,a2 2,a3 2而言 a1,a2 和 a2,a1 被認為是同一種選法 input 輸入n,k,n 1000000,k 1000,第二行有n個整數,大...

演算法基礎題(2)

程式5 題目 利用條件運算子的巢狀來完成此題 學習成績 90分的同學用a表示,60 89分之間的用b表示,60分以下的用c表示。1.程式分析 a b a b這是條件運算子的基本例子。程式6 題目 輸入兩個正整數m和n,求其最大公約數和最小公倍數。1.程式分析 利用輾除法。程式7 題目 輸入一行字元,...

演算法基礎 遞迴2

基礎概念 演算法基礎 遞迴1 任務描述 設有集合s 生成該集合中元素的所有排列 容易想到,s的所有排列即ai s 的所有情形,這正符合遞迴形式的定義 下面先用vector傳值實現演算法 include include include using namespace std void permute ...