原创 Leetcode 84. 柱狀圖中最大的矩形 枚舉單調棧優化
這道題目顯然可以枚舉,有兩種枚舉的思路 1. 枚舉矩形的左右兩個端點,這樣的思路不優化是O(N^3),可以優化到O(N^2), 但無法進一步優化。 2. 第二種思路:是枚舉高度就是height[i]的矩形,然後向左和向右,找到第一
原创 Leetcode 83 刪除排序鏈表中的重複元素-鏈表雙指針
維護兩個指針,第一個指針指向鏈表沒有重複元素的最後一個位置,第二個指針向後掃描,直到末尾。嚴格來說,在C++中需要手動釋放內存。但在算法題或者Java中不需要這麼做。 class Solution { public: List
原创 單調棧優化
對於每一個數如何找到它左邊比它小的第一個數?除去O(N^2)的直接做法 這樣想,由於從左往右最小,如果此時已經找到一個比較小的數,那麼從右邊來的已經大的數其實是沒有用的。因爲左邊已經有一個小的數的存在。所以要一直彈棧,直到前面的數都
原创 SpringBoot 基礎入門
1. 用IDEA自動創建SpringBoot項目 2. 理解自動生成的文件的作用以及含義 3. 在Java中增加一個controller層,編寫一個HelloWorld接口 在網頁打印出Hello World @RestCont
原创 Leetcode 91解碼方法 DFS以及動態規化優化
dfs方法,超時 class Solution { public: int res = 0; int numDecodings(string s) { dfs(s,0); return
原创 科研情況分析
1. Tasaki 自洽平均場失效 2. VSe2擬合方面 (A) 單帶困難 (B) 三帶TaS2的參數很像了,如果需要,在第一性的基礎上用Wannier去擬合下面3個軌道。 3. SU(2) CPT 困難
原创 Leetcode 487. 最大連續1的個數ⅡⅢ(雙指針滑動窗口)
給定一個二進制數組,你可以最多將 1 個 0 翻轉爲 1,找出其中最大連續 1 的個數。 示例 1: 輸入:[1,0,1,1,0] 輸出:4 解釋:翻轉第一個 0 可以得到最長的連續 1。 當翻轉以後,最大連續 1 的個數爲 4
原创 Leetcode 全排列問題不含重複和含重複剪枝情況
不重複,直接這樣遞歸就行 class Solution { List<List<Integer>> res = new ArrayList<>(); public List<List<Integer>> permute
原创 Leetcode38 外觀數組題解
這種字符串處理的題目,微軟很喜歡考 思路是在遞歸的基礎上進行字符串處理 class Solution { public String countAndSay(int n) { if(n==1) return "1
原创 2019年6月六級第一套翻譯解析
中國幅員遼闊,人空衆多,很多地方人們都說自己的方言。 China is a vast country with a large population. People in many places speak their own diale
原创 2019年六級作文:團隊精神和合作的重要性
The importance of Team Spirt and Communication in the Workplace [1] As the saying goes, "When the teamwork kicks in,