codecamp

字符串查询补充算法挑战

方法一:

function fearNotLetter(str) {
  var first = str.charCodeAt(0);     //把第一个字母的Unicode值单独保存
  for (var i = 0; i < str.length;i++) {     //遍历str字符串
    if(str.indexOf(String.fromCharCode(first + i)) < 0){     //从first开始一个个对str字符串查找,如果找到缺少的那一个,即 <0,则返回该值。
      return String.fromCharCode(first + i);
    }    
  }
  return undefined;      //如果没有发现缺值,则返回undefined。
}




fearNotLetter("abce");

方法二:

function fearNotLetter(str) {
  var s = str.charCodeAt(0),
      len = str.length,
      e = str.charCodeAt(len - 1),
      matchStr = '',
      r = '';
  if(e - s + 1 == len){
    return undefined;
  }else{
    for(var i = s;i <= e;i++){
      matchStr += String.fromCharCode(i);
    }
    for(var j = 0;j < matchStr.length; j++){
      var t = matchStr.charAt(j);
      if(str.indexOf(t)<0){
        r += t;
      }
    }
    return r;    
  }
}


fearNotLetter("abce");
字符配对算法挑战
输入检查算法挑战
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

HTML5&CSS

JavaScript

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }