字符串的包含

給定以長字符串a(chǎn)和以短字符串b,假設(shè)輸入的字符串只包含大寫英文字母:如何快速的判斷出短字符串b中的所有字符是否都在長字符串a(chǎn)中?

方法一:排序后查找

一般直接想到的方法時蠻力查找,但是這種方法會有多次重復(fù)查找,效率較低,接著想到的就是先排序再查找,減少一些重復(fù)的查找

排序后,只要發(fā)現(xiàn)B String中有一個字符不能在A String中找到,就可以判定結(jié)果為不包含

排序算法可以自由選擇,這里選擇冒泡排序,這里需要注意的是兩層循環(huán)的次數(shù)

方法二:位運(yùn)算查找

比排序后查找更好的辦法是去除排序的過程,因為這個題目只要求大寫的英文字母,所以可以使用散列表的形式將26個字母映射到一個固定的值上,比如位運(yùn)算

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法,內(nèi)部類的語法,繼承相關(guān)的語法,異常的語法,線程的語...
    子非魚_t_閱讀 31,767評論 18 399
  • 看路遙的《平凡的世界》,記得其中有段情節(jié),說的是孫蘭香讀高中時,為了減輕家里的負(fù)擔(dān)而去工地提泥包的事,書中這樣...
    劉向雄_閱讀 1,290評論 0 1
  • 文 | 伊路風(fēng)凡 前些天,下班等公交,拍下了眼前的風(fēng)景。閩南特色的紅房子,這座古老的小城。此情此景讓我發(fā)了這句話“...
    伊路風(fēng)凡閱讀 287評論 2 0
  • 空函數(shù) 如果想定義一個什么事也不做的空函數(shù),可以用pass語句: pass語句什么都不做,那有什么用?實(shí)際上pas...
    Clemente閱讀 404評論 0 0
  • 不管你承認(rèn)不承認(rèn),在上海,外地人是遭受歧視的。 我的公司里一個外地人也沒有,老總有自己的想法,他出身一家上海本地的...
    我就是懷疑閱讀 207評論 0 0