最长回文子串

2017-08-03  本文已影响0人  守心向暖
function isPalin(a) {
    if(a.length < 2) {
        return true;
    }
    var odd = a.length % 2 == 0;
    if(odd) {
        for(var i = 0; i < a.length / 2; i++) {
            if(a[i] != a[a.length - i - 1]) {
                return false;
            }
        }
    }
    else {
        for(var i = 0; i < a.length / 2; i++) {
            if(a[i] != a[a.length - i - 1]) {
                return false;
            }
        }
    }

    return true;
}
function getAllSubStr(a) {
  var result = [];
  var cnt = 1;
  while(cnt <= a.length) {
    for(var i = 0; i < a.length; i++) {
      if((i + cnt <= a.length) && result.indexOf(a.slice(i, i + cnt)) < 0) {
        result.push(a.slice(i, i + cnt));
      }
    }
    cnt++;
  }
  return result;
}
function getAllPalin(a) {
    var result = [];
    var tmp = getAllSubStr(a);
    for(var i = 0; i < tmp.length; i++) {
        if(isPalin(tmp[i])) {
            result.push(tmp[i]);
        }
    }
    return result;
}
上一篇下一篇

猜你喜欢

热点阅读