Algorithm:每周至少做一個leetcode的算法題;
Review:閱讀并點評至少一篇英文技術(shù)文章;
Tip/Techni:學(xué)習(xí)至少一個技術(shù)技巧;
Share:分享一篇有觀點和思考的技術(shù)文章。
A
28.Implement strStr()
Implement strStr().
題目描述:
Returns a pointer to the first occurrence of needle in haystack, ornullif needle is not part of haystack.

解題思路:
1.暴力求解
代碼實現(xiàn):

2.標(biāo)準KMP算法
(1)先對模式串needle做“自匹配”,即求出模式串前綴與后綴中重復(fù)部分,將重復(fù)信息保存在next數(shù)組中。
(2)依據(jù)next數(shù)組信息,進行haystack與needle的匹配。
在匹配過程中,若發(fā)生不匹配的情況,如果next[j]>=0,則目標(biāo)串的指針i不變,將模式串的指針j移動到next[j]的位置繼續(xù)進行匹配;若next[j]=-1,則將i右移1位,并將j置0,繼續(xù)進行比較。
kmp算法的關(guān)鍵在于求算next[]數(shù)組的值,即求算模式串每個位置處的最長后綴與前綴相同的長度。
代碼實現(xiàn):


R
Inline Functions in C++ - GeeksforGeeks
講述cpp內(nèi)聯(lián)函數(shù)的優(yōu)缺點,介紹其功能特性。
T
vscode快捷鍵學(xué)習(xí)
官方文檔傳送門Visual Studio Code Key Bindings
for linux版本https://code.visualstudio.com/shortcuts/keyboard-shortcuts-linux.pdf
Ubuntu下Vscode的實用快捷鍵
? ? 代碼格式化快捷鍵: ctrl+shift+i,不用全選或者選中。(巨實用)
? ? 單行注釋切換:ctrl + /
? ? 添加單行注釋:組合鍵 ctrl+k,ctrl+c
? ? 取消單行注釋:組合鍵 ctrl+k,ctrl+u
? ? 返回上一步:Ctrl + alt +? -(最后一個是減號鍵,下同)
? ? 返回下一步:Ctrl + shift + -
再附幾篇關(guān)于vscode快捷鍵的博客
傳送門:vscode: Visual Studio Code 常用快捷鍵 - 魚魚 - 博客園
Visual Studio Code 快捷鍵大全(linux版)-CSDN下
GitHub - LeonWuV/FE-blog-repository: 我的前端學(xué)習(xí)筆記倉庫
S
1.什么是軟件架構(gòu)。2.建筑師做什么軟件。
3.一些重要的決定都是軟件工程師。
4.我們?yōu)槭裁葱枰浖軜?gòu)。
Quick Introduction to Software Architecture - DZone Microservices