原创 判斷整數序列是不是二叉查找樹(BST)的後序遍歷結果

轉載:點擊打開鏈接 這裏沿用傳統二叉查找樹(BST)的概念:所有左子樹都小於根,右子樹都大於根。(不止是直接孩子,還有間接孩子!) 現在給出一個整數序列,要求判斷它是否是一棵二叉查找樹BST的後序遍歷結果。 如果去掉BST這個條件,我們一

原创 觀察者模式Observer及Java對此模式的支持

概念 觀察者模式又叫發佈-訂閱模式(publish-subscribe)。觀察者模式定義了一種一對多的依賴關係,讓多個觀察者對象同時監聽某一個主題對象。這個 主題對象在狀態發生改變時,會通知所有觀察者對象,使它們能夠自動更新自己。 結構分

原创 希爾Shell排序

package com.chengmaoning.shellsort; public class ShellSort { public static int[] a = { 10, 32, 1, 9, 5, 7, 12, 0, 4,

原创 已知二叉樹的前序、中序遍歷求後序遍歷

轉載至:點擊打開鏈接 首先,我們看看前序、中序、後序遍歷的特性: 前序遍歷:     1.訪問根節點     2.前序遍歷左子樹     3.前序遍歷右子樹 中序遍歷:     1.中序遍歷左子樹     2.訪問根節點     3.中序

原创 簡單工廠模式Static Factory Method

簡單工廠模式(Simple Factory Pattern)屬於類的創新型模式,又叫靜態工廠方法模式(Static FactoryMethod Pattern),是通過專門定義一個類來負責創建其他類的實例,被創建的實例通常都具有共同的父類

原创 java反射機制

Using Java Reflection By Glen McCluskey January 1998 Reflection is a feature in the Java programming language. It allo

原创 消息摘要算法及md5

消息摘要算法 介紹: 消息摘要算法的主要特徵是加密過程不需要密鑰,並且經過加密的數據無法被解密,只有輸入相同的明文數據經過相同的消息摘要算法才能得到相同的密文。(摘要可以比方爲指紋,消息摘要算法就是要得到文件的唯一職位) 特點

原创 樹、二叉樹、滿二叉樹、完全二叉樹概念分清

自由樹 自由樹是一個連通的,無迴路的無向圖。 令G=(V,E)爲一個無向圖。下面的表述是等價的。 1)        G是自由樹。 2)        G中任意兩個頂點由唯一一條簡單路徑得到。 3)        G是連通的,但從E中去掉

原创 S-Parameters

http://www.antenna-theory.com/definitions/sparameters.php S-parameters describe the input-output relationship between

原创 命令模式CommandPattern

概念 命令模式:把一個請求封裝爲一個對象,從而使你可用不同的請求對客戶進行參數化;對請求排隊或記錄請求日誌,以及支持可撤銷的操作。 在軟件系統中,“行爲請求者”與“行爲實現者”通常呈現一種“緊耦合”。但在某些場合,比如要對行爲進行“記錄、

原创 base64編碼

base64準確的說是一種編碼方式,而不是加密方式。那爲什麼要用base64編碼或者說其應用場景? 某些系統中只能使用ASCII字符。Base64就是用來將非ASCII字符的數據轉換成ASCII字符的一種方法。比如中文郵件等,比如可以用文

原创 抽象工廠模式AbstractFactoryPattern

定義:抽象工廠模式的實質是“提供接口,創建一系列相關或獨立的對象,而不指定這些對象的具體類。” 抽象工廠模式(英語:Abstract factory pattern)是一種軟件開發設計模式。抽象工廠模式提供了一種方式,可以將一組具有同一主

原创 工廠方法Factory Method

工廠方法模式:定義 一個用於創建對象的接口,讓子類決定實例化哪一個產品類。工廠方法使一個類的實例化延遲到其子類。 工廠方法模式的對簡單工廠模式進行了抽象。有一個抽象的Factory類(可以是抽象類和接口),這個類將不再負責具體的產品生產,

原创 分清Java抽象方法、抽象類以及接口

總結了一下java中抽象方法、抽象類和接口,防止大家傻傻分不清楚~概念性的東西都有點繞,請讀者一定看清每個字詞,認真體會。 抽象方法和抽象類 抽象方法僅有聲明而沒有函數體,必須使用abstract關鍵詞限定。使用abstract關鍵詞限定

原创 C實現bitmap位圖

轉載:點擊打開鏈接 所謂的Bit-map就是用一個bit位來標記某個元素對應的Value, 而Key即是該元素。由於採用了Bit爲單位來存儲數據,因此在存儲空間方面,可以大大節省。例如對於號碼89256,由於89256 mod 32=2