我爲何要開算法博客?

最近有個朋友問我,爲何會選擇寫數據結構與算法相關的技術博客。在我看來這裏面其實有兩個問題: 一、爲何要寫博客;二、爲何是算法。程序員

1.爲何要寫博客?

有段時間遭遇了一些很差的事情,壓力很大,間歇性失眠,每天滿腦子胡思亂想充滿負能量,變得本身都不認識本身了。很長一段時間裏我會把這些很差的事情都歸結於外在因素,怨天尤人。最壞的時候身心俱疲,易怒,甚至所以還生過一場不小的病。經歷過此次生病以後,我慢慢冷靜下來,也意識到過分的抱怨和吐槽沒有意義,它改變不了任何現狀甚至會起到負做用...我開始進行調整,對本身過去二十幾年的經歷進行反思和總結,尋找本身的問題。人是個很奇怪的生物,不少簡單的道理能脫口而出可是落到本身的身上卻很難去實踐,有些簡單的道理可能等到明白的時候人生匆匆已過數十載。曾經我也看過不少文章有寫關於人這一輩子最遺憾的事情,其中有兩個出現頻率比較高,分別是:後悔年輕時不夠努力;後悔能作本身想作的事情。能夠問本身幾個問題,你是否還記得年少的本身曾經許下的心願?有沒有爲此付出實踐哪怕一天?你是否有一個地方一直很想去卻沒能去成?有沒有一我的你一直很喜歡卻歷來沒有表白過?再想象一下若干年後塵歸塵,土歸土,回顧過往有一輩子有沒有一件事只要一想起就會發自心裏的歡喜,有沒有一件事能滿臉自豪的講給你子孫後代聽。正是這樣不斷的靈魂拷問讓我第一次比較全面的認識到了本身。原來終究我也只是個凡人,縱使骨子裏再年少輕狂也改變不了平庸的事實。我能接受這樣的本身嗎?這樣的問題也曾問過本身無數次,發現每一次的結果都同樣,原來充盈於心裏深處的情感早已給出了選擇!也算幸運的是,在乎識到本身的平庸以後,我開始認真的思考本身到底想要什麼以及要走怎樣的路。寫博客是我一直想作也一直沒能作的事情,畢業工做以來一直很想輸出分享一些比較有用的內容。也一直沒有付出實踐,究其緣由基本都是被工做和生活的雜事安排得滿滿當當,沒時間去整理和輸出。(容我給本身的懶惰找個臺階...)面試

2.爲何是算法?

  • 興趣

第一次接觸到算法是在大學時期,剛開始學習數據結構與算法課程的時候,看到一道很簡單的算法題,多個數求和。依然記得第一次理解求和思想並學會用代碼寫實現標準答案時那種發自心裏快樂!那個時候就對算法有了一些興趣。看看這個訂閱號的logo你會發現其實它是一個符號「Σ」,Σ(讀sigma)符號正是求和的意思,而這個logo也正是我根據本身算法啓蒙的經歷設計的0.0(見下圖)算法

![](http://ww1.sinaimg.cn/large/a2e0153egy1g5n11oc7ckj203c03cdfm.jpg)
  • 程序員廣泛缺少算法素養

從近兩年國內諸多公司的戰略調整來看,整個國內互聯網的環境都在朝着一個比較好的方向發展,簡單來講就是職業化和精英化。愈來愈多的公司開始更加註重基礎,注重專業素質。而隨着時代進步和發展,精英化也必然是大勢所趨。工做以來,有一個深入的體會就是不少從事互聯網行業技術相關的開發人員在計算機編程基礎知識方面都極度欠缺,最明顯的表現就在於數據結構與算法相關。不少工做多年的開發工程師甚至高級開發工程師都不具有基礎的算法知識(個人從業經驗,僅表明我的)。這其實是一件細思恐極的事情。這會影響到什麼?最典型是沒有算法思惟和意識,沒有對項目精益求精的追求。且不談在複雜項目核心業務的算法設計,亦不談性能效率優化層面,最簡單的表如今當下精英化的趨勢下可能連工做面試都會受到限制。然而這些重要性在大學校園裏幾乎不可能有人會提醒或者引導,工做初期的我也曾所以踩過很多坑。編程

  • 非科班出身,算法入門難

理性思考過國內程序員廣泛缺少算法素養的根本緣由。對於跨行業跨專業進入軟件開發行業的人來講算法入門的難度相對比較大,由於沒有接受過系統教育,這不難理解。可是對於計算機專業科班出身的人而言即便受過系統性訓練也只是比較基礎,遠達不到工做的標準。(也都源自個人從業經驗,僅表明我的)bash

也正是基於以上這些,我決定了開算法類博客。但願經過本身的分享能起到改變和促進做用,幫助到有須要的人,固然在這個過程本身也能鞏固和學習不少知識。微信

分享一下感覺

其實在以前的有一篇博客中也有說過,這裏忍不住再分享一下:數據結構

不知不覺,從開始發算法博客到現在已通過了半月,在這個過程當中其實也遇到過不少困難,也一度想過要放
棄,深入體會到沒有任何一件事情是能夠簡簡單單敷衍過去的,特別能體會那些工做之餘還能十年如一日堅
持技術文章創做的做者們的不容易。不過儘管辛苦也有不少收穫,好比精益求精,更追求更完美,又好比收
獲了不少技術之外的知識,認識了更多的朋友,視野也更加開闊。猶記得第一次投稿成功,第一次文章被大
的專欄收錄,第一次有人點贊,第一次有粉絲關注,甚至第一次某平臺粉絲破百的時候心裏的喜悅... 未
來,但願本身能把算法博客當成愛好一直寫下去,也但願能這些文章能給有須要的朋友帶來實際的幫助。在
後續博文推送過程當中,不排除也有些疏漏或者思惟理解上的誤區,歡迎交流或批評指正。
複製代碼

再回過頭看以前的總結基本感覺仍是同樣的。性能

博客說明

關於大綱

主要劃分爲基礎大綱和進階大綱。目前一共只外發了10篇左右算法博客,內容相對比較少,等初階基礎類型基本覆蓋齊全,相對系統的時候我會統一整理一篇基礎大綱,大概一個月內完成。基礎大綱以後纔會有進階性的算法題博文推送和進階性大綱。穿插在基礎大綱和進階大綱內也會有一些知名互聯網公司的比較經典的算法面試題,除了算法相關也會插入一些數據結構相關的文章。學習

關於博客的內容

  • 關於選題和題解

全部題型都是通過精心挑選的。基礎大崗都是比較典型的能表明某一種算法思想的類型,進階大綱會對這些算法思想進一步實踐強化理解。算法相關的題解,附算法思路說明,僞代碼說明以及實際編碼。算法效率都是100%級別(leetcode評測擊敗100%),基本上保證每一題都是最優解,每一個題解都附有測評截圖。也有一些題目爲了更好的展現不一樣的算法思想會採起一題多解的形式。優化

  • 關於彩蛋

彩蛋的設計是源算法經驗中積累的一些有益於提高算法效率的小技巧,通常會以累計的形式,累計足夠4~5個彩蛋發一篇關於彩蛋的說明。有些彩蛋涉及到計算機編譯原理相關的知識因爲主題和篇幅關係暫時不會太過深刻研究分析,可是會有實際數聽說明的demo。

關於博客的改進建議

一直以來也但願以比較簡單愉快的形式分享知識,然而知識的分享本就枯燥無味再加本人愚鈍,目前還沒找到比較好的方式,後續會努力作一些改進和嘗試。若是你有好的建議,也歡迎交流~

也不排除可能博文中可能出現一些錯誤,一經發現歡迎批評指正,解題思路也會有千差萬別,若是有比博文中更好精彩思路方法也歡迎一塊兒交流。能夠加我的微信Aeiric,也能夠關注訂閱號Aeiric(你沒看錯,是同樣的名字)進行留言。或者發郵件到xujian2065@163.com

關注訂閱號 獲取更多幹貨~
相關文章
相關標籤/搜索