原创 利用先序、後序、中序兩兩組合重構二叉樹(以Java爲例)

利用先序、後序、中序兩兩組合重構二叉樹(以Java爲例) 二叉樹的相關問題中利用先序、後序、中序兩兩結合來重構二叉樹是比較常見的一類問題,對於這一類的問題我們可以利用遞歸的思想來解決。我將結合下面的例子來進行描述。 先序:1

原创 Java泛型

泛型的基本概念及優點 泛型:指參數化類型的能力 優點:(1)、能夠在編譯時而不是運行時檢測出錯誤 (2)、提高軟件的可靠性和可讀性 用途:可以定義帶泛型的類、接口和方法 定義帶泛型的類和接口時,需要將泛型類型放在類名和接口名

原创 重定向與轉發

一、重定向 1、引入 客戶端請求服務器時,服務器將響應的狀態碼設置爲302,並添加location的響應頭,告知客戶端將location的值作爲新的URL重新確定請求。客戶端收到響應後,根據location的值重新發送請求。 2、

原创 JSP入門

一、引入 JSP(Java Server Pages):以Java語言爲基礎的動態網頁開發技術。在html代碼中嵌套Java代碼。JSP的目的是將數據處理與頁面顯示分離。 二、工作原理 當一個JSP頁面被第一次請求是,服務器首先將

原创 面向對象的特徵有哪些方面

抽象:將一類事務的共同特徵總結出來構造類的過程(抽象出類的屬性和行爲) 繼承:由已有的類產生新類的過程,讓某個類型的對象獲得另一個類型的對象的屬性和方法,實現方式有兩種: 實現繼承:直接使用基類的屬性和方法,無需額外編碼 抽象

原创 Http 協議

一、協議版本 HTTP1.0 :客戶端的每次請求都與Web服務器建立一次TCP連接,服務器完成請求處理後立即斷開連接,服務器不跟蹤每個客戶也不記錄過去的請求 HTTP1.1 :支持持續的連接,增加了持續連接、身份認證、狀態管理、

原创 Java支持的基本數據類型及自動裝箱、拆箱

Java支持8種基本的的數據類型,byte short int long float double char boolean 下表列出的是他們各自對應的包裝類以及所佔字節數 類型 包裝類 字節數 by

原创 Java 利用DOM和SAX解析XML

DOM解析           在DOM接口規範中,有四個基本的接口:Document,Node,NodeList以及NamedNodeMap。在這四個基本接口中,Document接口是對文檔進行操作的入口,它是從Node接口繼承過來的。

原创 Python元組

1、元組 與列表類似,元組也是由任意類型的元素組成的序列,與列表不同的是,元組是不可變的,這意味着一旦元組被定義,將無法增加、刪除、修改元素。可以將元組理解爲一個常量列表。 2、元組創建 可以將所有元素用逗號隔開來創建一個元組,可以用圓括

原创 Python集合

1、集合 集合可以理解爲一個沒有重複元素的列表,也可以理解爲一個捨棄了值,僅剩下鍵的字典,如果僅僅想知道某一元素是否存在而不關心其他,使用集合是非常好的選擇。 2、創建集合 可以使用set()創建一個集合,也可以用{}將一系列以逗號隔開的

原创 Python 裝飾器

1、裝飾器 在不改變源碼的情況下修改已經存在的函數,例如增加調試信息,增加日誌記錄,查看傳入參數等。 裝飾器實際上是一個將一個函數作爲參數並且返回另一個函數的函數 2、裝飾器的使用 在需要裝飾的函數前添加裝飾器的名字   @decor

原创 Python字符串

1、 字符串的創建 單行字符串:一對單引號或雙引號 多行字符串:三個單引號或雙引號 >>> a='hello world' >>> a 'hello world' >>> b="hello world" >>> b 'hello wo

原创 Python 魔法方法

1、和比較相關的魔法方法 方法 用途 __eq__(self, other) self == other __ne__(self, other) self != other __lt__(self, other) se

原创 單例模式

一、定義 作爲對象的創建模式,單例模式確保某一個類只有一個實例,並且自行實例化並向整個系統提供這個實例。 二、單例模式特點 單例類只能有一個實例 單例類必須自己創建自己的唯一實例 單例類必須給其他對象提供這一實例 三、餓漢式單例類 餓

原创 Python字典

1、字典 Python中的字典可以理解爲一種鍵值對的集合 鍵必須是唯一的,值可以重複 值可以取任何類型,但鍵必須是你不可變的類型,如字符串、數組或元組等 字典是可變的,因此可以增加、刪除、修改字典中的鍵值對 2、字典創建 字典中鍵和