原创 具體數學之數論

1.整除性: m\n⇔m>0,並且m可以整除nm \backslash n \Leftrightarrow m > 0,並且m可以整除nm\n⇔m>0,並且m可以整除n 歐幾里得算法求解最大公約數 gcd⁡(0,n)

原创 LeetCode N皇后(回溯法C語言實現)

51. N皇后 【思路】不管是八皇后還是N皇后,思想都一樣,我們從第一行開始每一行放一個皇后,再放之前,判斷是否與已經放置的皇后衝突(不能放同一行同一列同一對角線)因爲每次在一行只放置一個皇后,因此,判斷衝突的時候我們不需要在判斷行了。如

原创 LeetCode 第177場周賽

1.日期之間隔幾天 【思路】計算兩個日期和1970-1-1之間相隔的天數,然後相減即可。需要注意閏年閏月的判斷。 int getday(int *d1){ int month[12]={31,28,31,30,31,30,31,

原创 LeetCode1103. 分糖果 II

排排坐,分糖果。 我們買了一些糖果 candies,打算把它們分給排好隊的 n = num_people 個小朋友。 給第一個小朋友 1 顆糖果,第二個小朋友 2 顆,依此類推,直到給最後一個小朋友 n 顆糖果。 然後,我們再回到隊伍的起

原创 LeetCode 跳躍遊戲I&II(貪心算法)

55. 跳躍遊戲 代碼(C語言): int max(int a,int b){ return a>b?a:b; } bool canJump(int* nums, int numsSize){ int farthest=

原创 LeetCode685.冗餘連接II

在本問題中,有根樹指滿足以下條件的有向圖。該樹只有一個根節點,所有其他節點都是該根節點的後繼。每一個節點只有一個父節點,除了根節點沒有父節點。 輸入一個有向圖,該圖由一個有着N個節點 (節點值不重複1, 2, ..., N) 的樹及一條附

原创 LeetCode面試題52. 兩個鏈表的第一個公共節點

面試題52. 兩個鏈表的第一個公共節點 【思路】雙指針依次遍歷兩個鏈表,兩者遍歷長度一定是一樣的。tmp1指向headA,tmp2指向headB,當遍歷到鏈表末尾時,指向另一個鏈表頭部繼續遍歷,這樣如果存在公共節點,兩者一定會相遇並一起走

原创 Leetcode有關滑動窗口的題目

代碼是用C寫的。 239. 滑動窗口最大值 使用單調雙端隊列記錄窗口內可能的最大值。 遍歷數組一次,由於是找窗口內的最大值,在窗口移動的過程中,需要把窗口內可能成爲接下來窗口最大值的數字先記錄在隊列中。 入窗口:每次有一個數字滑入

原创 LeetCode只出現一次的數字(位運算法)

136. 只出現一次的數字 a^a=0; 0^a=a int singleNumber(int* nums, int numsSize){ int i,ans=0; for(i=0;i<numsSize;i++){

原创 數組中的重複數字和消失數字求解模板(下標哈希法)

由於數組中存的爲1~n,都爲正數,我們可以用正負號來表示下標爲 i 的數在數組中是否出現。搜索遍歷整個數組時,如果已經爲負數,那麼之前一定出現過一次,這個數就是我們要找的重複的數字。 最後哪些值爲正數的下標i所對應的數字i+1就是在數組中

原创 LeetCode面試題07. 重建二叉樹

面試題07. 重建二叉樹 解題思路: 通過前序遍歷找根節點,找到根節點後,再中序遍歷中找當前根節點,找到後,左邊的節點是當前根節點的左子樹中的節點,右邊的節點是當前根節點右子樹的節點。遞歸建樹。 例如: 代碼: /** * Defi

原创 LeetCode比賽(持續更新…)

目前代碼是用C語言寫的,之後會逐漸加入C++版本和Python版本。歡迎交流! 周賽: 比賽時間爲每週週日上午10:30-12:00 LeetCode-第177場周賽 LeetCode 第179場周賽 雙週賽: 比賽時間

原创 LeetCode 第179場周賽

5352. 生成每種字符都是奇數個的字符串 char * generateTheString(int n){ char *s=(char*)malloc(sizeof(char)*(n+1)); for(int i=0;

原创 動態規劃求子序列和子串問題

LeetCode子序列問題:300. 最長上升子序列;673. 最長遞增子序列的個數;1143. 最長公共子序列;516. 最長迴文子序列 LeetCode子串問題: 5. 最長迴文子串;14. 最長公共前綴 300. 最長上升子序列

原创 安裝VMware Tools選項顯示灰色的正確解決辦法

一、VMware Tools簡介   VMware Tools 中包含一系列服務和模塊,可在 VMware 產品中實現多種功能,從而使用戶能夠更好地管理客戶機操作系統,以及與客戶機操作系統進行無縫交互。   VMware Tools 生命