原创 OSError: Cannot initialize new instance of inotify, Errno=Too many open files (EMFILE) 問題解決

自己的模塊需要監控指定目錄,因爲要監控的目錄過多,創建了很多WatchManager實例,結果報錯,提示打開太多文件。Google了一下,有提示說修改配置的 //查看 cat /proc/sys/fs/inotify/max_user_

原创 Python logging動態調整日誌等級

如果是root logger,可以直接調用setLevel調節 logger = logging.getLogger() logger.setLevel(level) 如果要調整handler可以像下面這樣: level =

原创 Linux MySQL Connector/C++ 編程實例

本篇文章介紹如何在Linux平臺使用Connector/C++ 連接數據庫,假定MySQL已經安裝完成。如果還沒有安裝MySQL,請先安裝。MySQL版本:8.0.19 目錄 1. 安裝Connector/C++ 2. 編寫代碼 3. 創

原创 二叉樹遍歷算法的六種c語言實現 遞歸與非遞歸

二叉樹遍歷分爲三種: 先序遍歷:先訪問根結點,其次左節點,最後右節點 中序遍歷:先訪問左結點,其次跟節點,最後右節點 後序遍歷:先訪問左結點,其次右節點,最後根節點 三種遍歷的遞歸算法實現形式類似,僅僅是訪問順序不同,非常簡潔。如

原创 解決win 10 vscode 打開後白屏問題

華爲matebook,win10 企業版,打開vs code後出現白屏,就是那種沒有任何按鈕的樣子,白花花的。百度了一番,嘗試了1. 卸載重裝。2. 設置控制檯保持舊屬性問題。無效。後來Google了以下,搜到一個類似問題,vs code

原创 Linux虛擬內存和進程虛擬地址空間簡述

後臺開發經常會問此類問題,雖說難度不大,但是知道和不知道還是有區別的。以下的內容總結自《深入理解Linux內核》第一章,僅僅是簡述,沒有深入研究,畢竟內存管理這一塊內容超級多,感興趣的同學可以去啃啃這本書。 虛擬內存 所有新近的Unix系

原创 《劍指offer》c++版本 18.刪除鏈表的結點

如題: 這道題要求在O(1)時間內刪除鏈表節點。 常規解法是遍歷鏈表,找到所需元素,使其前繼節點的next指針指向待刪節點的next指針,時間複雜度位O(n),不滿足要求。除了遍歷之外,還有一種更好的辦法刪除結點,如果結點存在後繼元素的

原创 《劍指offer》c++版本 16.數值的整數次方

如題: 題目要求一個數的N次方,且不需要考慮大數,看似簡單,for循環搞定。仔細詳細,問題還挺多。比如,base爲0或者指數爲負,同時浮點數和0比較也是個問題。很多時候,面試官出的題目看似簡單,但如果不加考慮,直接上手就寫代碼,很容易出

原创 《劍指offer》c++版本 14.剪繩子

本題在牛客網劍指offer專項裏沒看到,原書第二版上有,如題: 這道題是開放的動態規劃題,題目中只給了繩子長度,卻沒定義具體剪多少段,初遇此題,難以下手,看了題解,豁然開朗。設f(n)爲常爲n的繩子剪成m段之後可得最大值,則存在n-1中

原创 《劍指offer》c++版本 15.二進制中1的個數

如題: 平常開發過程中,遇到求數的每位數字的時候,通常做法是將這個逐位右移,本題目計算整數的二進制中1的個數,通過右移的方式,能夠解決部分問題,但是,這裏有個坑,如果整數爲負的話,右移後最左邊還是1,如果是循環的話,容易引起死循環。舉個例

原创 《劍指offer》c++版本 13. 機器人的運動範圍

如題: 地上有一個m行和n列的方格。一個機器人從座標0,0的格子開始移動,每一次只能向左,右,上,下四個方向移動一格,但是不能進入行座標 和列座標的數位之和大於k的格子。 例如,當k爲18時,機器人能夠進入方格(35,37),因爲3+5

原创 《劍指offer》c++版本 5.替換空格

 如題: 請實現一個函數,將一個字符串中的每個空格替換成“%20”。例如,當字符串爲We Are Happy.則經過替換之 後的字符串爲We%20Are%20Happy。 這道題難度不大,替換空格,字符串長度邊長,需要知道變多長,這時候

原创 《劍指offer》c++版本 7.重建二叉樹

 如題: 輸入某二叉樹的前序遍歷和中序遍歷的結果,請重建出該二叉樹。假設輸入的前序遍歷和 中序遍歷的結果中都不含重複的數字。例如輸入前序遍歷序列{1,2,4,7,3,5,6,8}和中序 遍歷序列{4,7,2,1,5,3,8,6},則重建

原创 《劍指offer》c++版本 8.二叉樹的下一個結點

如題: 給定一個二叉樹和其中的一個結點,請找出中序遍歷順序的下一個結點並且返回。注意,樹中的結點不僅包含左右子結點,同時包含指向父結點 的指針。 這道題目考察對二叉樹中序遍歷的理解,做題的時候,如果沒有思路,簡單畫畫圖,可以幫助理解。

原创 Linux相關面試題 進程調度的問題

之前面試騰訊的時候,被問過這個問題,回答的不是太準確。整理了如下內容,如果有不正確的地方,還請指出來。 Linux 內核實現瞭如下四種調度類,按優先級從高到低排列: 停止類(主要用於多個CPU之間的負載均衡和CPU的熱拔插) 實時類 完全