原创 單鏈表就地逆置(Java版),單鏈java版

題目:有一個線性表(a1,a2,a3,...,an),採用帶頭節點的單鏈表L存儲,設計一個算法將其就地逆置,線性表變爲(an,...a3,a2,a1)。所謂“就地”指輔助存儲空間爲O(1)。 解題思路: 如果是順序存儲的話,我們很

原创 mysql索引失效的幾種情況

索引並不是時時都會生效的,比如以下幾種情況,將導致索引失效:     1.如果條件中有or,即使其中有條件帶索引也不會使用(這也是爲什麼儘量少用or的原因)   注意:要想使用or,又想讓索引生效,只能將or條件中的每個列都

原创 Nginx使用反向代理時Hessian411錯誤解決方案(轉)

問題描述: 用 Hessian 實現 web service 過程中,需要創建對象時,是使用 HTTP POST 方法來傳遞數據的。但是在有反向代理 (nginx) 的情況下,會拋出異常 (com.caucho.hessian.cl

原创 瀏覽器中輸入URL到返回頁面的全過程

在瀏覽器輸入:http://www.baidu.com/,最後,瀏覽器呈現出相應網頁,這個過程究竟發生了什麼? 第一步,解析域名,找到主機IP (1)瀏覽器會緩存DNS一段時間,一般2-30分鐘不等。如果有緩存,直接返回IP

原创 JVM性能調優

JVM性能調優監控工具jps、jstack、jmap、jhat、jstat使用詳解 JDK本身提供了很多方便的JVM性能調優監控工具,除了集成式的VisualVM和jConsole外,還有jps、jstack、jmap、jha

原创 十步完全理解SQL

很多程序員視 SQL 爲洪水猛獸。SQL 是一種爲數不多的聲明性語言,它的運行方式完全不同於我們所熟知的命令行語言、面向對象的程序語言、甚至是函數語言(儘管有些人認爲 SQL 語言也是一種函數式語言)。 我們每天都在寫 SQ

原创 證明HashMap是線程不安全的

在平時開發中,我們經常採用HashMap來作爲本地緩存的一種實現方式,將一些如系統變量等數據量比較少的參數保存在HashMap中,並將其作爲單例類的一個屬性。在系統運行中,使用到這些緩存數據,都可以直接從該單例中獲取該屬性集合。但是,最

原创 java版快速排序

Java非遞歸方式實現快速排序 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21

原创 單鏈表的翻轉

前面我們大約把單鏈表 ADT 的基本操作都過了一遍,但是這還不夠。單鏈表在面試與筆試中出現的機率很高,接下來我們再花點時間把常見的單鏈表面試題儘可能過一遍,徹底掌握單鏈表~ 那開始我們的第一個面試題?不妨做做“單鏈表反轉”,或

原创 JAVA設計模式之單例模式

概念:  java中單例模式是一種常見的設計模式,單例模式分三種:懶漢式單例、餓漢式單例、登記式單例三種。  單例模式有一下特點:  1、單例類只能有一個實例。  2、單例類必須自己自己創建自己的唯一實例。  3、單例類必須給所有其他對

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

遞歸方式: /**   * 實現二叉樹的創建、前序遍歷、中序遍歷和後序遍歷   **/   package DataStructure;      /**   * Copyright 2014 by Ruiqin Sun   * Al

原创 servlet Filter Listener總結

1、Filter的功能 filter功能,它使用戶可以改變一個 request和修改一個response. Filter 不是一個servlet,它不能產生一個response,它能夠在一個request到達servlet之前預處理r

原创 繼承Thread和實現Runable接口的區別

 在實際應用中,我們經常用到多線程,如車站的售票系統,車站的各個售票口相當於各個線程。當我們做這個系統的時候可能會想到兩種方式來實現,繼承Thread類或實現Runnable接口,現在看一下這兩種方式實現的兩種結果。 Java代碼 

原创 JVM 基礎知識(GC)

幾年前寫過一篇關於JVM調優的文章,前段時間拿出來看了看,又添加了一些東西。突然發現,基礎真的很重要。學習的過程是一個由表及裏,再由裏及表的過程,所謂的“溫故而知新”。而真正能走完這個輪迴的人,也就能稱爲大牛或專家了。這個過程可能來來回

原创 mysql explain用法

explain顯示了mysql如何使用索引來處理select語句以及連接表。可以幫助選擇更好的索引和寫出更優化的查詢語句。 使用方法,在select語句前加上explain就可以了,如: explain select * from