ARTS打卡第三周

ARTS示意:

A(Algorithm)算法題
R(Review)閱讀并點(diǎn)評(píng)一篇英文文章
T(Tip)學(xué)習(xí)至少一個(gè)技術(shù)技巧
S(Share)分享一篇有觀點(diǎn)和思考的技術(shù)文章

中心擴(kuò)散算法

題目:給定一個(gè)字符串 s,找到 s 中最長(zhǎng)的回文子串。你可以假設(shè) s 的最大長(zhǎng)度為 1000。
示例 1:

輸入: "babad"
輸出: "bab"
注意: "aba" 也是一個(gè)有效答案。

示例 2:
輸入: "cbbd"
輸出: "bb"

var longestPalindrome = function(s) {
     if(s.length<2) return s;
        //不管是雙核還是單核,都轉(zhuǎn)化成單核         
        let arr=[];
        for(let i=0;i<s.length;i++){
            arr.push(s[i]);
            arr.push("#");
        }
        s=arr;
        //中心對(duì)稱(chēng)方式查找
        let max='';
        let len=s.length;
        for(let i=0;i<len;i++){
            let str=core(s,i-1,i+1);
            if(max.length<str.length){
                max=str
            }     
        }
        //實(shí)現(xiàn)中心對(duì)稱(chēng)查找
        function core(s,l,r) {
            while (s[l]&&s[r] && s[l]==s[r]){
                l=l-1;
                r=r+1;
            }
            return s.slice(l+1,r); //可從已有的數(shù)組中返回選定的元素
        }
        //把數(shù)組中的所有元素放入一個(gè)字符串 去除附加字符后的結(jié)果返回
        return max.join("#").replace(/#/g,"");
};

R&T

Mock.js 生成隨機(jī)數(shù)據(jù),攔截 Ajax 請(qǐng)求

安裝

npm install mockjs

使用 Mock

var data = Mock.mock({
    // 屬性 list 的值是一個(gè)數(shù)組,其中含有 1 到 10 個(gè)元素
    'list|1-10': [{
        // 屬性 id 是一個(gè)自增數(shù),起始值為 1,每次增 1
        'id|+1': 1
    }]
})
// 輸出結(jié)果
console.log(JSON.stringify(data, null, 4))

MockJS 基礎(chǔ)語(yǔ)法

// 獲取所隨機(jī)數(shù)量的字符串
Mock.mock({
  "string|1-10": "★"
})
// 輸出結(jié)果
{
  "string": "★★★★★★★★★"
}
// 獲取隨機(jī)數(shù)
Mock.mock({
  "number|1-100": 100
})
// 輸出結(jié)果
{
  "number": 7
}
// 獲取隨機(jī)對(duì)象
Mock.mock({
  "object|2": {
    "310000": "上海市",
    "320000": "江蘇省",
    "330000": "浙江省",
    "340000": "安徽省"
  }
})
// 運(yùn)行結(jié)果
{
  "object": {
    "320000": "江蘇省",
    "330000": "浙江省"
  }
}
// 獲取數(shù)組中隨機(jī)的一個(gè)值
Mock.mock({
  "array|1": [
    "AMD",
    "CMD",
    "UMD"
  ]
})
// 運(yùn)行結(jié)果
{
  "array": "CMD"
}
// 正則表達(dá)式 隨機(jī)輸出
Mock.mock({
  'regexp': /[a-z][A-Z][0-9]/
})
// 輸出結(jié)果
{
  "regexp": "cR9"
}
// Random.date()
Random.date()
Mock.mock('@date')
Mock.mock('@date()')

// Random.date( format )
Random.date('yyyy-MM-dd')
Random.date('yy-MM-dd')
Random.date('y-MM-dd')
Random.date('y-M-d')

Mock.mock('@date("yyyy-MM-dd")')
Mock.mock('@date("yy-MM-dd")')
Mock.mock('@date("y-MM-dd")')
Mock.mock('@date("y-M-d")')

Mock.mock('@date("yyyy yy y MM M dd d")')
// Random.date() 運(yùn)行結(jié)果
"1978-11-21"
"2000-01-17"
"1983-01-23"

// Random.date( format )
"1985-04-17"
"77-05-30"
"75-03-24"
"11-8-8"

"1990-06-01"
"11-09-27"
"81-04-10"
"99-11-29"

"1976 76 76 05 5 25 25"

// Random.time() 時(shí)分秒
Random.time()
Mock.mock('@time')
Mock.mock('@time()')

// Random.time( format )
Random.time('A HH:mm:ss')
Random.time('a HH:mm:ss')
Random.time('HH:mm:ss')
Random.time('H:m:s')

Mock.mock('@time("A HH:mm:ss")')
Mock.mock('@time("a HH:mm:ss")')
Mock.mock('@time("HH:mm:ss")')
Mock.mock('@time("H:m:s")')

Mock.mock('@datetime("HH H hh h mm m ss s SS S A a T")')
// Random.time() 輸出結(jié)果
"23:45:47"
"22:02:10"
"09:04:25"

// Random.time( format )
"PM 20:47:38"
"pm 23:38:13"
"12:29:34"
"22:40:7"

"AM 00:37:50"
"am 11:04:01"
"04:26:26"
"15:51:13"

"13 13 01 1 48 48 43 43 034 34 PM pm 204356923034"
// 隨機(jī)城市
Random.county()
Mock.mock('@county')
Mock.mock('@county()')
// Random.county( prefix )
Random.county(true)
Mock.mock('@county(true)')
// Random.county() 輸出結(jié)果
"民勤縣"
"長(zhǎng)壽區(qū)"
"扎賚諾爾區(qū)"
// Random.county( prefix )
"貴州省 黔東南苗族侗族自治州 麻江縣"
"云南省 保山市 其它區(qū)"

……更多API,請(qǐng)參考MockJs

S(分享)

設(shè)計(jì)網(wǎng)站
站酷
UI中國(guó)
紅動(dòng)中國(guó)
……
編輯器
VScode 微軟出的一款良心編輯器,真心好用,個(gè)人比較喜歡
VScode插件 大牛整理的一些插件
VScode插件 代碼自動(dòng)檢測(cè) 出現(xiàn)錯(cuò)誤標(biāo)紅線等錯(cuò)誤提示

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容