FCC 中級算法題 堿基配對
阿新 • • 發佈:2017-08-02
結果 bsp per dna 方法 return 知識 簡單 asc
DNA Pairing
DNA 鏈缺少配對的堿基。依據每一個堿基,為其找到配對的堿基,然後將結果作為第二個數組返回。
Base pairs(堿基對) 是一對 AT 和 CG,為給定的字母匹配缺失的堿基。
在每一個數組中將給定的字母作為第一個堿基返回。
例如,對於輸入的 GCG,相應地返回 [["G", "C"], ["C","G"],["G", "C"]]
字母和與之配對的字母在一個數組內,然後所有數組再被組織起來封裝進一個數組。
Array.push()
String.split()
思路(這個比較簡單):
(1)先把所給的字符串拆分成數組;
(2)創建一個二維數組,每個元素由字符串數組中的一個字母和與其對應的字母組成.
知識點:
(1)String.split()方法將一個
String
對象分割成字符串數組,通過
將字符串分成子串;
(2)Array.push()方法將一個或多個元素添加到數組的末尾,並返回數組的新長度.
代碼:
1 function pair(str) { 2 var arr = str.split(‘‘); 3 4 function change(letter) { 5 switch (letter) { 6 case "A": 7 return "T"; 8 case "T": 9return "A"; 10 case "G": 11 return "C"; 12 case "C": 13 return "G"; 14 15 } 16 } 17 var newArr = []; 18 for (var i = 0; i < arr.length; i++) { 19 newArr[i] = []; 20 newArr[i].push(arr[i]); 21 newArr[i].push(change(arr[i]));22 23 } 24 return newArr; 25 } 26 27 pair("GCG");
FCC 中級算法題 堿基配對