原创 通過棧來實現隊列 通過隊列來實現棧
通過棧來實現隊列 思路:我們每次將數push進棧stack1中,按照隊列的方式要取的話,就要取最面的一個數,但是又不能直接取,這時就可以通過一個輔助棧stack2來,先將stack1中的所有元素每pop出一個push進stack2,將st
原创 併發預備知識
併發概念: 當擁有多個線程時,程序在單核處理器上運行時,多個線程交替進入內存中,多核處理器上,每個線程都將分配到一個處理器上,是可以同時運行的 cpu多級緩存: 內存和高速緩存都連接在系統總線上 因爲cpu的讀取速度太快,所以要通過高
原创 LeetCode496. 下一個更大元素 I
思路一:暴力解法 遍歷取出數組nums1中的每一個數,然後將每個數在nums2數組中找到下一個最大的數 詳細代碼: public int[] nextGreaterElement(int[] nums1, int[] nums2) {
原创 LeetCode71.簡化路徑
關於相對路徑和絕對路徑: 絕對路徑:(唯一的)絕對路徑僅有一條 相對路徑:從當前所在的位置到指定的位置 詳細的引用 :https://blog.csdn.net/u011327334/article/details/50355600 我
原创 LeetCode42.接雨水
思路一:暴力破解 首先我們要找一個最高的柱子,將整個柱子堆劃分爲2部分,即左部分和右部分,我們分別來統計左右部分可以裝的總水量, 以左部分爲例:我們從左部分開頭開始,向右遍歷至中間最高處, 情況1.我們所走的當前位置如果前面有比它高的,
原创 Java多線程總結
一.進程與線程 進程就是一個程序(例如打開QQ),線程就是所答開QQ中同時打開多個聊天窗口,各個進程都是獨立的,而線程則不同,他們有時是可以進行數據共享的。 多線程就是同時執行多個線程(其實還是處理器逐個去執行) 二.使用多線程 使
原创 用java畫圖
我們要使用的Java來畫圖,要用到的就是AWT和Swing中,核心就是Graphics2D的這個類,我們使用的Java畫圓飄動。 最終的效果圖如下: 在這裏我們先縷縷思路,我們要在窗口中畫,那麼我們就要有一個窗口(JFrame的),在窗
原创 哈夫曼樹的創建及編碼java
哈夫曼樹是最優二叉樹,它是根據一個結點的權值對結點進行排序 這裏我們實現的是輸入一段文字,程序會根據各個文字出現的頻率來獲得文字的權重,因爲使用的是哈夫曼樹來存儲,所以在編碼時,我們要將使用頻率高的編碼放在容易找到的位置,所以放在哈夫曼樹
原创 簡談Servlet(一)
servlet的實質就是java代碼,通過java的API 動態的向客戶端輸出內容 快速操作: 實現步驟1: 1.創建實現servlet的類 2.複寫service方法 3.在web.xml中進行
原创 簡談Servlet(二)—ServletContext
ServletContext對象封裝這web應用的信息,一個web應用可以有多個servlet對象,但是只能有一個servletcontext對象。 ServletContext對象在web應用被服務器加載時創建,在服務器關閉時被銷燬 它
原创 java實現動態數組
package array; //創建動態數組 public class Array<E> {//使用泛型 private E[] data; private int size;//長度 public Array(int c
原创 JDBC連接池
在使用JDBC時我們可以自己去創建一個工具類(JDBCUtils),每次來調用它的方法來獲取連接或者來釋放連接,具體該類的實現如下: package JDBCUtils; import java.sql.Connection; imp
原创 C3P0連接池
C3P0連接池 使用連接池時,爲了簡化操作,我們可以使用插件來簡化操作步驟,C3P0就是個簡化的操作工具,使用它是,我們需要兩個東西,第一就是名爲c3p0-config.xml的文件,這裏面所寫的是一些配置的文件,第二個就是它的jar包
原创 JQuery應用
案例一:創建省市二級聯動 1.首先要確定事件,所選的事件應該是change事件,並綁定 2.通過JQ的選擇器獲取這個對象 3.創建二維數組來存儲對應省份所涉及的城市 4.通過一層遍歷尋找對應的城市,再通過遍歷得到該城市的所有節點 5.每
原创 DBUtils的使用
1.簡介 只使用JDBC進行開發過於繁雜,DBUtils是JDBC的簡化開發包。需要導入相關jar包。 commons-dbutils-1.6.jar jar名字 2.常用類和方法 QueryRunner:執行