原创 歸併算法(java 語言實現)

這裏實現的是原地歸併。 注意 aux 數組是實現原地歸併的輔助數組,如果在每一層遞歸的 merge 方法中都創建 一個輔助數組 將使空間複雜度變大。這就是爲什麼 private static Comparable[] aux;

原创 泛型歸併排序(java 語言實現)

以下實例實現了 1. 實現了Comparable 接口的基本類型的泛型排序, 2. 複雜或者說自定義對象的泛型排序,使用 Comparator 接口定製的比較器 泛型歸併排序主要代碼 package com.shan.merge

原创 堆排序(java 語言實現)

可以用 數組或者線性表實現 Heap ,關鍵是理清楚 當前節點的座標和父節點的座標以及左右孩子的座標的關係,比如 當前座標是 i 其他節點的座標如何表示。然後就是添加刪除的原則。 package com.shan.heapSor

原创 setTimeout 和 setInterval 總結

實例一:定時重發驗證碼 <!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <script type="t

原创 適配器模式(java語言實現)

定義 適配器模式將一個類的接口,轉換成客戶期望的另一個接口。 使得原本由於接口不兼容的而不能在一起工作的那些類可以在一起工作。而且不用修改原適配者類的代碼。 wiki: https://en.wikipedia.org/wiki/

原创 責任鏈模式(java語言實現)

什麼是責任鏈模式 定義: 在責任鏈模式裏,很多對象由每一個對象對其下家的引用而連接起來形成一條鏈。請求在這個鏈上傳遞,直到鏈上的某一個對象決定處理此請求。發出這個請求的客戶端並不知道鏈上的哪一個對象最終處理這個請求,這使得系統可以

原创 泛型快速排序(java 語言實現)

快速排序基本思想:http://blog.csdn.net/stushan/article/details/51172253 實現 Comparable 類型和定製類型的比較(要定義比較器) package com.shan.qu

原创 快速排序(java 語言實現)

package com.shan.quickSort; /** * 快速排序是由C.A.R.Hoare 開發的,該算法在數組中選擇一個稱爲主元(pviot)的元素將數組分爲兩部分, * 是的第一部分的元素全部小於或等於主元,

原创 分析輸入url到頁面返回的過程

1. 輸入url 2. 瀏覽器查找域名的IP地址 (DNS查找過程如下: 瀏覽器緩存 – 瀏覽器會緩存DNS記錄一段時間。 有趣的是,操作系統沒有告訴瀏覽器儲存DNS記錄的時間,這樣不同瀏覽器會儲存個自固定的一個時間(2分鐘到30

原创 反轉單向鏈表 (java 語言實現)

/** * 演示翻轉鏈表的兩種典型實現,使用泛型。 * * @author shan * @create 2016-09-01 11:46 */ public class ReverseSinglyList {

原创 JVM 學習資源

JVM 學習筆記: Java類的連接與初始化 (及2013阿里初始化筆試題解析) http://www.importnew.com/17105.html Java ClassLoader http://www.codeceo.co

原创 static 和 final 總結

參考: 作者博客:http://www.cnblogs.com/dolphin0520 總結得超好!!! 淺析Java中的final關鍵字 http://www.importnew.com/18586.html Java中的s

原创 模板方法模式(java語言實現)

什麼是模板方法模式 定義: 定義了統一的算法框架,將部分實現延遲到子類中實現。 使得子類在不改變算法結構的同時可以重新定義該算法框架的某些定義步驟。 如何實現模板方法模式 業務和場景分析 uml RefreshBeve

原创 代理模式(java語言實現)

概念和原理 代理模式的定義: 爲其他對象提供一種代理以控制對這個對象的訪問。在某些情況下,一個對象不適合或者不能直接引用另一個對象,而代理對象可以在客戶端和目標對象之間起到中介的作用。 組成: 抽象角色:通過接口或抽象類聲明真實角

原创 三大範式總結

1.第一範式(確保每列保持原子性) 2. 第二範式(確保表中的每列都和主鍵相關) 第二範式在第一範式的基礎之上更進一層。 第二範式需要確保數據庫表中的每一列都和主鍵相關, 而不能只與主鍵的某一部分相關(主要針對聯合主鍵而言)。