iOS 摘要的生成

2021-08-11 18:50:49 字數 586 閱讀 3037

有時我們為了專案資料保密,我們會做一些摘要設計,接下來說下蘋果自帶的一些摘要演算法:md5、sha1、sha256等。我們自己編寫摘要的實現,這樣就可以避免第三方庫的匯入;

如下**都是在nsstring類的擴充套件內實現的;

- (nsstring *)md5string
//通過觀察可知,md5和sha1實現方式類似

//(sha系列摘要基本乙個模型,以下不再贅述)

- (nsstring *)sha1string

//hmac依賴摘要演算法型別

//key這裡取得定值,做簡要說明

- (nsstring *)hmacstring

//將char陣列生成字串

- (nsstring *)stringfrom:(unsigned

char *)digest length:(nsinteger)leng

nslog(@"final stringfrom:%@",string);

return string;

}

最短摘要的生成

程式設計之美 第3.5節 最短摘要的生成 解法 遍歷一遍輸入序列t,將t中與s字元相同的字元的下標放入陣列中,然後從這個陣列中不斷讀出單詞,放入集合ses中,當ses的大小等於s.size 時,說明已經找到乙個短的摘要了,更新length。如果已經遍歷了length個單詞,讓然沒有找到,就放棄當前遍...

最短摘要生成

問題定義 給定乙個字串str,以及乙個關鍵字字串陣列key,求str中包含key中所有字串的最短子串。基本方法 雙指標掃瞄字串 詳細演算法 1.使用start和end兩個整數來指示掃瞄位置。均初始化為0。2.對end加1,直到str start,end 中包含所有關鍵字,或者end strlen s...

最短摘要生成

題目 抽象點說,就是在乙個字串中,找一些目標字串,找到包含所有目標字串的最小字串。題目雖然叫做最短摘要生成,但和實際的搜尋snippet的計算還是有比較大的差距的。先來看看這些序列 w0,w1,w2,w3,q0,w4,w5,q1,w6,w7,w8,q0,w9,q1 w0,w1,w2,w3,q0,w4...