原创 LeetCode72:編輯距離

1、題目 給你兩個單詞 word1 和 word2,請你計算出將 word1 轉換成 word2 所使用的最少操作數 。 你可以對一個單詞進行如下三種操作: 插入一個字符 刪除一個字符 替換一個字符 2、思路 對於兩個字符串中的

原创 String轉int快捷方法

String.valueOf(i) Integer.toString(i) i+"" i:int類型,int+String==>String i+""也就是一個int型的常量。+上個空的字符串,這裏牽涉到

原创 leetcode53-簡單動態規劃

題目描述 給定一個整數數組 nums ,找到一個具有最大和的連續子數組(子數組最少包含一個元素),返回其最大和。 示例: 輸入: [-2,1,-3,4,-1,2,1,-5,4], 輸出: 6 解釋: 連續子數組 [4,-1,2,1

原创 Spring依賴注入之Spel 2019.11.02

SPEL:Spring Expression Language 1、通過${}可以對對象進行注入 2、格式:#{名稱} 3、使用Spel表達式可以用value的方式進行注入 4、property對類中某個屬性賦值 當利用到另外一個

原创 Spring AOP面向切面編程 2019.11.04

1、AOP簡介 1、面向切面編程 1、AOP介紹 Aspect-Oriented Programming:面向接口編程是OOP(Object-Oriented Programming)的一個補充 2、AOP好處: 1、降低模塊耦合

原创 藍橋杯往年試題練習

2003年Java 1、世紀末的星期 曾有邪教稱1999年12月31日是世界末日。當然該謠言已經不攻自破。 還有人稱今後的某個世紀末的12月31日,如果是星期一則會.... 有趣的是,任何一個世紀末的年份的12月31日都不可能

原创 數據庫課程設計: jsp+servlet賓館客房管理系統

賓館客房管理系統 效果展示圖: 1、登錄系統 2、員工管理界面(BootStrap界面優化) 3、入住/會員註冊等界面(都差不多) 4、管理員管理界面(套用信息管理系統模板) 5、添加員工 2、數據庫展示 概念設計: 1、E-R

原创 算法之遞歸學習

前言 最近要參加藍橋杯,感覺雖然學過算法這門課,但是一旦真正做題就感覺力不從心,真的不會,在網上找了基礎課程指導,正在一步步學習,希望可以對算法有一個新的理解。 整體思路 遞歸步驟:我做一部分,委託出去一部分 (1)找重複:找子

原创 LeetCode688:類似576

1、注意結束條件 2、注意步數=0的情況 代碼: package com.leetCode.dp; public class leet688 { /** * 注意走0步的情況 * r和c都在原地,走1步的情況 *

原创 LeetCode1277. 統計全爲 1 的正方形子矩陣

1、暴力解法:通過幾個循環控制正方形大小的同時,控制走向 package com.leetCode.dp; public class leet1277 { /** * 修改1:超時 * @param args */

原创 LeetCode1027. 最長等差數列

思路: (1)建立一個二維數組dp[i][j]:i是指下標,j是指到這個下標的差值,dp[i][j]是指到這個下標這個差值最長的序列長度 (2)如果後面某個下標到這個下標的差值與當前的差值相同,那個下標的最大差值=這個下標的差值+

原创 LeetCode576. 出界的路徑數-三維數組動態規劃+dfs

1、對於邊界個數,二維矩陣到某個位置的次數等問題,首要考慮dfs 2、本題有三個變數:i,j,N三個都要用作dp變量 在規定的步數內走到邊界,可以用遞歸。但是直接遞歸會造成超時 在遞歸的過程中總會走到一些之前已經走過的地方,記錄每

原创 LeetCode523:連續子數組和

1、未考慮的情況: k=0的情況,一般涉及到%和/都要優先考慮到除數爲0的情況。 k=0且數組中有連續兩個0的情況,返回true 雙層循環,複雜度(O(n^2)) 代碼: package com.leetCode.dp; pub

原创 leetcode152:乘積最大子序列

自己想的方法: 雙重for循環,外層控制開始的地方,內層控制從開始到數組最後 不斷替換最大值,最終得出結果,但是效率很低 代碼: package com.leetCode.dp; public class leet152 {

原创 leetcode1014:最佳觀光組合

1、一開始考慮兩個for循環解決,不出意料,超時 2、後來想着建立一個類,標明序號值,但是還是和原來差不多 變換公式A[i]+i+A[j]-j 3、看題解,很簡單,用兩個值,一個保存A[i]+i到目前爲止的最大值。一個保存A[i]