原创 Java 內部類的使用 -- JAVA 基礎

1.爲什麼使用內部類? 使用內部類最吸引人的原因是:每個內部類都能獨立地繼承一個(接口的)實現,所以無論外圍類是否已經繼承了某個(接口的)實現, 對於內部類都沒有影響 1.1.使用內部類最大的優點就在於它能夠非常好的解決多重

原创 Java 多線程編程 wait()、notify() -- JAVA 進階

假設如下代碼中,若t1線程在t2線程啓動之前已經完成啓動。代碼的輸出是(B) public static void main(String[]args)throws Exception { final Object obj

原创 二叉樹中和爲某一值的路徑 -- 漫漫算法路 刷題篇

題目描述 輸入一顆二叉樹和一個整數,打印出二叉樹中結點值的和爲輸入整數的所有路徑。路徑定義爲從樹的根結點開始往下一直到葉結點所經過的結點形成一條路徑。 import java.util.ArrayList; /** public

原创 Servlet知識點小結 -- JAVA後臺

init方法: 是在servlet實例創建時調用的方法,用於創建或打開任何與servlet相的資源和初始 化servlet的狀態,Servlet規範保證調用init方法前不會處理任何請求 service方法:是servlet

原创 Java File類的簡單說明與使用 -- Java 基礎

File類的一下常用方法和說明 1.訪問文件名相關方法: String getName(); 返回此File對象所表示的文件名和路徑名(如果是路徑,則返回最後一級子路徑名)。 String getPath(); 返回此Fil

原创 集合擴容問題(ArrList爲例,常用集合擴容機制) -- JAVA 基礎

今天剛好遇到一個關於集合擴容的問題,正好藉機整理一下: 當底層實現涉及到擴容時,容器或重新分配一段更大的連續內存(如果是離散分配則不需要重新分配,離散分配都是插入新元素時動態分配內存),要將容器原來的數據全部複製到新的內

原创 有序矩陣查找 -- 算法小結

現在有一個行和列都排好序的矩陣,請設計一個高效算法,快速查找矩陣中是否含有值x。 給定一個int矩陣mat,同時給定矩陣大小nxm及待查找的數x,請返回一個bool值,代表矩陣中是否存在x。所有矩陣中數字及x均爲int範圍內整數。

原创 魔法幣 -- 漫漫算法路 刷題篇

小易準備去魔法王國採購魔法神器,購買魔法神器需要使用魔法幣,但是小易現在一枚魔法幣都沒有,但是小易有兩臺魔法機器可以通過投入x(x可以爲0)個魔法幣產生更多的魔法幣。 魔法機器1:如果投入x個魔法幣,魔法機器會將其變爲2x+1個

原创 小範圍排序(巧用堆排序) -- 算法小結

已知一個幾乎有序的數組,幾乎有序是指,如果把數組排好順序的話,每個元素移動的距離可以不超過k,並且k相對於數組來說比較小。請選擇一個合適的排序算法針對這個數據進行排序。 給定一個int數組A,同時給定A的大小n和題意中的k,請返回

原创 有序數組合並 -- 算法小結

有兩個從小到大排序以後的數組A和B,其中A的末端有足夠的緩衝空容納B。請編寫一個方法,將B合併入A並排序。 給定兩個有序int數組A和B,A中的緩衝空用0填充,同時給定A和B的真實大小int n和int m,請返回合併後的數組。

原创 Java 併發編程 內存模型 volatile關鍵字 -- JAVA 進階

volatile這個關鍵字可能很多朋友都聽說過,或許也都用過。在Java 5之前,它是一個備受爭議的關鍵字,因爲在程序中使用它往往會導致出人意料的結果。在Java 5之後,volatile關鍵字才得以重獲生機。 volatile關

原创 java.lang包中不能被繼承的類 -- JAVA 基礎

java.lang包中不能被繼承的類: public final class Byte public final class Character public static final class Character.Uni

原创 三色排序 -- 算法小結

題目描述:有一個只由0,1,2三種元素構成的整數數組,請使用交換、原地排序而不是使用計數進行排序。 給定一個只含0,1,2的整數數組A及它的大小,請返回排序後的數組。保證數組大小小於等於500。 測試樣例: [0,1,1,0,2

原创 Java RTTI -- JAVA 進階

運行時類型識別(RTTI, Run-Time Type Identification)是Java中非常有用的機制,在Java運行時,RTTI維護類的相關信息。 多態(polymorphism)是基於RTTI實現的。RTTI的功能主

原创 重複值判斷(堆排序的非遞歸使用) -- 算法小結

請設計一個高效算法,判斷數組中是否有重複值。必須保證額外空間複雜度爲O(1)。 給定一個int數組A及它的大小n,請返回它是否有重複值。 測試樣例: [1,2,3,4,5,5,6],7 返回:true 編程思路:我們知道堆排序