
字符配对算法挑战
方法一:
function pair(str) {
var newArr = []; //创建一个新数组,用于存储DNA数组
str = str.split(''); //分离str字符串
for (var i = 0;i < str.length;i++){
newArr.push([str[i],get(str[i])]); //使用push函数,把碱基对一个一个放入数组中,要注意的是,因为一个配对的字母要独立成一个数组,所以
} //使用push([something]),这样的格式。
function get(element){ //使用枚举法列举4种情况
switch(element){
case'A':
return 'T';
case'T':
return 'A';
case'C':
return 'G';
case'G':
return 'C';
default:
return 0;
}
}
return newArr;
}
pair("GA");
方法二:
function pair(str) {
var arr = str.split(''),
rArr = [];
for(var i=0;i<arr.length;i++){
switch(arr[i]){
case 'A':
rArr.push(["A","T"]);
break;
case 'T':
rArr.push(["T","A"]);
break;
case 'C':
rArr.push(["C","G"]);
break;
case 'G':
rArr.push(["G","C"]);
break;
}
}
return rArr;
}
pair("GCG");