串
一.定義
子串 主串 空格串≠空串 φ
堆式順序儲存結構
二. 匹配:
1.庫函式 strstr (c++/c
返回字串頭指標 /null (乙個乙個向前挪地比較
t = o(n*m) 最壞情況 最後乙個字元不同
2.改進-----從末尾開始比
幸運:t = o(n) t = o(n*m) 最壞情況 第乙個字元不同
3.kmp演算法
t = o(n)
找到相同子串
三. 陣列
三維陣列
四. pta題集
loc(a47)=loc(a00)+(j*m+i)*l=sa+(7*8+4)*3=sa+18013、設主串 t = abaabaabcabaabc,模式串 s = abaabc,採用 kmp 演算法進行模式匹配,到匹配成功時為止,在匹配過程中進行的單個字元間的比較次數是:(b)
a. 9
b. 10
c. 12
d. 15
解析:求next陣列,next=;
開始匹配
abaabaabcabaabc
abaabc
當比較到s[5]時,不成功,比較6次;
abaabaabcabaabc
-----abaabc
根據next[5]=2,移動s到s[2]處,從s[2]處開始比較,比較4次,成功;
五. 實踐小結
pta求交集那題 1 先順序再求交集
2 位圖法 (最後沒過的那個測試點是各有100000個數 那我一開始記錄的陣列就要大一點了
位圖法應用
使用位圖法判斷整形陣列是否重複
使用位圖法進行整形陣列排序
圖源
python學習第四章
1.建立字典 每個鍵和它的值之間用冒號隔開,項之間用逗號隔開,整個字典使用一對大括號括起來。2.字典基本操作 len d 返回d中項的數量。d k 返回關聯到鍵k上的值。d k v將值v關聯到鍵k上。del d k 刪除鍵位k的項。k in d檢查d中是否有含有鍵為k的項。3.字典的格式化字串 可以...
C Primer 學習(第四章)
1.左值和右值 c 中可以這樣簡單的理解左值和右值 能夠取位址的 有名字的就是左值,反之,不能取位址的 沒有名字的就是右值。當乙個物件被用作右值的時候,用的是物件的值 內容 當物件被用作左值的時候,用的是物件的身份 在記憶體中的位置 乙個重要的原則是在需要右值的地方可以用左值來代替,但是不能把右值當...
LinQ In Action 學習第四章
第四章開始了 linq to object 的講解 entity 用了很多linq的語法,如果linq 掌握好了entity很好學了 第四第五章 需要多加練習例子,熟練linq 的語法。第四章的例子做完了,主要講了一些常用的linq 語法。1.select select many 2.orderby...