寫乙個函式,為 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 ...