原创 LintCode: 帶環鏈表 + 帶環鏈表 II

1. 帶環鏈表描述給定一個鏈表,判斷它是否有環。樣例給出 -21->10->4->5, tail connects to node index 1,返回 true挑戰不要使用額外的空間思路: 可以先看上面這個圖,a 是 起點,b 是 環的

原创 以後每週寫一篇博客。

忙完了轉正的事情了,立一個flag,以後每週學習總結一點,寫一篇博客。 記錄一個學習方法: 費曼學習法一共有4個步驟: 第1步,學習一樣新東西之後,用盡可能簡單的語言解釋給小孩子聽,或者對相關課題不瞭解的朋友聽。 第2步,找出別人聽不懂的

原创 Java中用戶線程與守護線程(Daemon)

Java分爲兩種線程:用戶線程和守護線程所謂守護線程是指在程序運行的時候在後臺提供一種通用服務的線程,比如垃圾回收線程就是一個很稱職的守護者,並且這種線程並不屬於程序中不可或缺的部分。因 此,當所有的非守護線程結束時,程序也就終止了,同時

原创 Mybatis中使用註解和XML書寫sql的方式

簡單的記錄下哈~~~~~~1. 使用註解的方式如下,很簡潔。@Mapper public interface QuestionDAO { String TABLE_NAME = " question "; String I

原创 LintCode:重排鏈表

描述給定一個單鏈表L: L0→L1→…→Ln-1→Ln,重新排列後爲:L0→Ln→L1→Ln-1→L2→Ln-2→…必須在不改變節點值的情況下進行原地操作。樣例給出鏈表 1->2->3->4->null,重新排列後爲1->4->2->3-

原创 分析SpringMVC的工作流程並實現一個簡易版的SpringMV框架

SpringMVC以DispatcherServlet爲核心,負責協調和組織不同組件以完成請求處理並返回響應的工作,實現了MVC模式。想要實現自己的SpringMVC框架,需要從以下幾點入手:       一、瞭解SpringMVC運行流

原创 Java中errors,Exception 以及 try-catch與throws、throw 相關

Java中errors以及try-catch相關 異常類型最高的繼承類是Throwable, Throwable下有兩個子類: (1)Error:指的是JVM錯誤,這個時候的程序並沒有執行,無法處理; (2)Excepti

原创 適配器模式和裝飾器模式

適配器模式 概念:將一個類的接口轉換成客戶希望的另外一個接口。Adapter模式使得原本由於接口不兼容而不能一起工作的那些類可以一起工作。 特點:主要應用於希望複用一些現存的類,但是接口又與複用環境要求不一致的情況。 分類:類適

原创 Lintcode : Merge K Sorted Lists

描述合併k個排序鏈表,並且返回合併後的排序鏈表。嘗試分析和描述其複雜度。樣例給出3個排序鏈表[2->4->null,null,-1->null],返回 -1->2->4->null思路:1. 利用歸併排序,先兩兩合併,依次迭代,這裏是利用

原创 Java中的泛型相關知識

一、泛型的概念    泛型,即“參數化類型”。一提到參數,最熟悉的就是定義方法時有形參,然後調用此方法時傳遞實參。那麼參數化類型怎麼理解呢?顧名思義,就是將類型由原來的具體的類型參數化,類似於方法中的變量參數,此時類型也定義成參數形式(可

原创 Lint Code:LRU緩存策略

描述爲最近最少使用(LRU)緩存策略設計一個數據結構,它應該支持以下操作:獲取數據(get)和寫入數據(set)。獲取數據get(key):如果緩存中存在key,則獲取其數據值(通常是正數),否則返回-1。寫入數據set(key, val

原创 LintCode:驗證二叉查找樹

描述給定一個二叉樹,判斷它是否是合法的二叉查找樹(BST)一棵BST定義爲:節點的左子樹中的值要嚴格小於該節點的值。節點的右子樹中的值要嚴格大於該節點的值。左右子樹也必須是二叉查找樹。一個節點的樹也是二叉查找樹。樣例一個例子: 2 /

原创 LintCode: Convert Sorted List to Binary Search Tree

描述給出一個所有元素以升序排序的單鏈表,將它轉換成一棵高度平衡的二分查找樹樣例 2 1->2->3 => / \ 1 3思路:每次找到鏈表的中點,中點作爲根節點,然後左邊的鏈

原创 Form表單的嵌套問題

最近在項目中碰到了form中還需要另設form表單的問題,查了下,簡單記錄在這裏。 參考:https://www.cnblogs.com/jpfss/p/9468293.html 1. 先看一個正確的寫法: <!DOCTYPE html

原创 IDEA中使用Mybatis的一個DEMO遇到的一些問題

1.創建項目: 使用maven創建的一個quickstart項目,然後在pom.xml中添加MyBatis的相關依賴,pom.xml文件如下: <dependencies> <dependency> <groupI