原创 【LeetCode】51. N-Queens 輸出N皇后的棋盤佈局

一、概述 輸入整數N,輸出N皇后的所有可能情形。 之前只做過判斷N皇后,沒做過輸出N皇后,感覺有點麻煩。實際上輸出的確挺麻煩,而且我的代碼還有優化空間。 二、分析 整體思路就是用DFS了,所以我只介紹我自己的思路。簡而言之,我是先保存座

原创 【python】Kaggle入門:titanic 的特徵提取與特徵分析

目   錄 0、概述 1、Anaconda的準備 2、導入必需包和數據集 3、數據分析 3.1 數據概覽 3.2 數據初步分析 3.2.1 Pclass 客艙等級 3.2.2 Sex 性別 3.2.3 Age 年齡 3.2.4 SibSp

原创 【LeetCode】42. Trapping Rain Water 儲存雨水

一、概述 輸入一個數組,數組元素表示牆高,現在下一場雨,輸出牆之間的空隙能儲存多少雨。 挺有意思的一道題,題目中有圖片,所以理解題意不難。 但是我的想法爆時間了,就很難受。想半天想不出好方法,然後去看了答案,這尼瑪真的有點難想,我看了好一

原创 【python】卷積神經網絡:前向傳播與反向傳播的原理 & 僅使用numpy的CNN實現

一、概述 之前我們已經瞭解了普通的神經網絡——使用前向傳播和反向傳播來進行訓練。以MNIST數據集爲例,在該網址中已經進行了推導,並得到了超過96%的準確率。但是由於其自身的缺陷,想要更進一步提高準確率很困難。這是因爲雖然三層的神經網絡可

原创 【LeetCode】45. Jump Game II 跳臺階 II

一、概述 廣爲人知的跳臺階問題。 輸入一個序列,從第一個開始跳,每次跳的最遠距離是該元素的值,問最少跳多少次出隊列。 這題目,本質上是將具體的跳臺階問題化爲抽象的貪心問題。 我是在BFS→剪枝→找最大值→得到較優解中一步步理解的。 二、

原创 【LeetCode】46. Permutations 尋找全排列

一、概述 輸入n個元素,找其全排列 。 第一眼看上去有點懵,然後就開始DFS。用unordered_set當哈希表來記錄當前序列已經有的值,然後遍歷剩餘的值。 想法特別簡單,時空複雜度還好。 但是這方法明顯不好——肯定不是最優解。 最優

原创 【前端】HTML+CSS+JavaScript:前端入門,利用ajax實現表格的自動更新

一、概述 寫這個網頁的最初動機是我的一門課需要圖形界面實現,時間有點緊,去學習QT之類的已經來不及了,同時我又對前端很感興趣,因此起了用HTML來寫一個網頁作爲圖形界面的想法。 後端代碼參見該鏈接。主要實現一個記分牌流水線算法。前端主要需

原创 【LeetCode】劍指DP:62. Unique Paths 尋找路徑

一、概述 輸入m、n兩個整數,形成一個m*n的陣列,從左上角座標爲(1,1)走到右下角座標爲(m,n)的格子。輸出不同的路徑數。 這麼說吧,能做出來的都是擊敗100%。 我唯一要吐槽的就是它題目中說m<100,n<100,然後我就用m=

原创 【python】Numpy基礎:數組與向量化計算

本文所有內容均總結自《利用python進行數據分析》。這本書太無趣了,如果不自己做一點筆記的話,根本讀不下去。於是有了這些文章。 一、Numpy概述 Numpy是目前Python數值計算中最爲重要的基礎包,大多數計算包都提供了基於Nump

原创 【python】爬蟲入門:爬取網易雲音樂的歌曲評論、用戶歌單、用戶聽歌記錄等

目錄   一、概述 二、爬取流程 1、爬取評論 1.1、資源定位 1.2、爬取準備 1.3、代碼實現 2、爬取聽歌記錄 2.1、資源定位 2.2、爬取準備 2.3、js劫持 三、總結 一、概述 第一次學爬蟲,正常來講應該是爬百度百科或者是

原创 【LeetCode】Weekly Contest 160:Circular Permutation in Binary Representation & 89. Gray Code 格雷碼輸出

一、概述 周賽160中第二題二進制排列和89題格雷碼輸出類似。只不過後者默認起點爲1,而前者可以自己指定起點。因此在這裏我以前者爲例進行分析。 輸入兩個數字,第一個爲格雷碼位數,第二個爲格雷碼十進制起始值。返回一個格雷碼數組,元素均爲十進

原创 【LeetCode】41. First Missing Positive 找到第一個未提到的正整數

一、概述 輸入一個數組,其元素均爲整數,輸出最小的未在數組中出現的整數。要求時間複雜度O(n),空間複雜度O(1)。 一看時間複雜度O(n),沒法排序做了,倒也是,這能排序做就不是hard題了。第一反應哈希,開了65536的數組,結果一個

原创 【LeetCode】Biweekly Contest 9 : Minimum Knight Moves 象棋中馬的最短路徑

一、概述 LeetCode雙週賽的第二題:輸入一個座標,馬從(0,0)開始走,走到該座標所需要的最短步數。 如圖馬能往八個方向走。我的第一個思路就是DFS,開始沒想到循環問題,所以時間溢出,然後使用二維數組記錄,可以得到一個結果,但不是

原创 【LeetCode】43. Multiply Strings 字符串乘法

一、概述 輸入兩個字符串類型的數字,輸出字符串類型的兩數字的積。 題目很容易理解,實際做起來我就是按平常做乘法的思路做的。 寫了兩個函數:字符串與一位數字相乘和兩字符串相加,然後循環調用。 時空複雜度太垃圾了。 好的算法速度比我快四十倍不

原创 【python】爬蟲入門:代理IP池的使用、文件的寫入與網易雲爬取時的注意事項

一、概述 在兩天前實現利用爬蟲爬取網易雲音樂用戶的各類公開信息之後,我對現有爬蟲進行了功能上的增加。主要有: ①、使用代理IP池防止IP被封; ②、將爬取用戶的聽歌記錄、歌單、關注、粉絲這四類數據的代碼分別封裝成函數; ③、將爬取到的數據