DNA Pairing

2019-06-13  本文已影响0人  李大公子

DNA 链缺少配对的碱基。依据每一个碱基,为其找到配对的碱基,然后将结果作为第二个数组返回。
Base pairs(碱基对) 是一对 AT 和 CG,为给定的字母匹配缺失的碱基。
在每一个数组中将给定的字母作为第一个碱基返回。
例如,对于输入的 GCG,相应地返回 [["G", "C"], ["C","G"],["G", "C"]]
字母和与之配对的字母在一个数组内,然后所有数组再被组织起来封装进一个数组。

pair("ATCGA") 应该返回 [["A","T"],["T","A"],["C","G"],["G","C"],["A","T"]]。
pair("TTGAG") 应该返回 [["T","A"],["T","A"],["G","C"],["A","T"],["G","C"]]。
pair("CTCTA") 应该返回 [["C","G"],["T","A"],["C","G"],["T","A"],["A","T"]]。

function pair(str) {
  let arr = str.split("");
  arr.map((x)=>{
    if(x == "G"){
      arr[arr.indexOf(x)] = ["G","C"];
    }else if(x == "C"){
      arr[arr.indexOf(x)]  = ["C","G"];
    }else if(x == "A"){
      arr[arr.indexOf(x)]  = ["A","T"];
    }else if(x == "T"){
      arr[arr.indexOf(x)]  = ["T","A"];
    }
  });
  return arr;
}
console.log(pair("GCG"));
function pair(str) {
    let arr = str.split("");
    let result = arr.map((item) => {
        let pair = '';
        switch (item) {
            case 'A':
                pair = 'T';
                break;
            case  'T':
                pair = 'A';
                break;
            case 'C':
                pair = 'G';
                break;
            case 'G':
                pair = 'C';
                break;
            default: return ;
        }
        return [item,pair];
    });
    return result;
}
console.log(pair('GCG'));
function pair(str) {
  var obj={'A':'T','T':'A','G':'C','C':'G'};
  var arr=[];
  for(var i in str){
    arr.push([str[i],obj[str[i]]]);
  }
  return arr;
}
console.log(pair("GCG"));
上一篇 下一篇

猜你喜欢

热点阅读