原创 根據二叉樹的前序和中序構建二叉樹

有了二叉樹的前序和中序或者中序和後序遍歷序列就可以利用這些信息來重構一棵二叉樹了,這是編程之美3.9裏面的一個題目。 java實現中遇到的難點: java的值傳遞機制 當一個對象被當作參數傳遞到一個方法後,此方法可改變這個對象的屬性,並可

原创 求二叉樹中節點的最大距離遞歸解法

問題定義 如果我們把二叉樹看成一個圖,父子節點之間的連線看成是雙向的,我們姑且定義"距離"爲兩節點之間邊的個數。寫一個程序求一棵二叉樹中相距最遠的兩個節點之間的距離。 代碼實現中二叉樹用的是完全二叉樹 import java.util.

原创 生產者消費者模擬程序

//模擬生產者消費者,生產者(Producter類)生產窩頭(WoTou類),放入一個大筐(stack類),消費者(Consumer類)從大筐中取出窩頭並打印窩頭的id public class producconsumertest {

原创 根據前序中序序列重建二叉樹

在編程 過程中遇到的問題,跟java的值傳遞機制有關,先了解下java的值傳遞機制。 當一個對象被當作參數傳遞到一個方法後,此方法可改變這個對象的屬性,並可返回變化後的結果,那麼這裏到底是值傳遞還是引用傳遞?     答:是值傳遞。Jav

原创 在從1到n的正數中1出現的次數

題目:輸入一個整數n,求從1到n這n個整數的十進制表示中1出現的次數。 例如輸入12,從1到12這些整數中包含1的數字有1,10,11和12,1一共出現了5次。   分析:這是一道廣爲流傳的google面試題。用最直觀的方法求解並不是很難

原创 HTTP協議通信過程

當我們在瀏覽器的地址欄輸入“www.baidu.com”然後按回車,這之後發生了什麼事,我們直接看到的是打開了對應的網頁,那麼內部客戶端和服務端是如何通信的呢? 1、     1、URL自動解析       HTTP URL包含了用

原创 linux 軟連接 硬連接

1.Linux鏈接概念 Linux鏈接分兩種,一種被稱爲硬鏈接(Hard Link),另一種被稱爲符號鏈接(Symbolic Link)。默認情況下,ln命令產生硬鏈接。 【硬連接】 硬連接指通過索引節點來進行連接。在Linux的文件系統

原创 棧的push,pop序列

題目:輸入兩個整數序列。其中一個序列表示棧的push順序,判斷另一個序列有沒有可能是對應的pop順序。爲了簡單起見,我們假設push序列的任意兩個整數都是不相等的。 比如輸入的push序列是1、2、3、4、5,那麼4、5、3、2、1就有

原创 java中Vector、ArraryList和LinkedList的區別

List接口一共有三個實現類,分別是ArrayList、Vector和LinkedList。List用於存放多個元素,能夠維護元素的次序,並且允許元素的重複。3個具體實現類的相關區別如下: ArrayList是最常用的List實現類,內部

原创 ping過程

“Ping”的幕後過程我們以下面一個網絡爲例:有A、B、C、D四臺機子,一臺路由RA,子網掩碼均爲255.255.255.0,默認路由爲192.168.0.1 1.在同一網段內 在 主機A上運行“Ping 192.168.0.5”後,都發

原创 調整數組順序使奇數位於偶數前面

題目:輸入一個整數數組,調整數組中數字的順序,使得所有奇數位於數組的前半部分,所有偶數位於數組的後半部分。要求時間複雜度爲O(n)。 分析:如果不考慮時間複雜度,最簡單的思路應該是從頭掃描這個數組,每碰到一個偶數時,拿出這個數字,並把位於

原创 JDBC操作數據庫的編程步驟

//第一步,註冊驅動程序 Class.forName("數據庫驅動的完整類名");//"com.mysql.jdbc.Driver //第二步,獲取一個數據庫的連接 Connection conn = DriverManager.getC

原创 字符串的排列

題目:輸入一個字符串,打印出該字符串中字符的所有排列。例如輸入字符串abc,則輸出由字符a、b、c所能排列出來的所有字符串abc、acb、bac、bca、cab和cba。 分析:這是一道很好的考查對遞歸理解的編程題,因此在過去一年中頻繁出

原创 JDBC中使用事務編程步驟

1.關閉自動提交事務 Connection conn = DriverManager.getConnection("鏈接url","用戶名","密碼"); conn.setAutoCommit(false); 2.捕獲(try/catch

原创 和爲n連續正數序列

題目:輸入一個正數n,輸出所有和爲n連續正數序列。 例如輸入15,由於1+2+3+4+5=4+5+6=7+8=15,所以輸出3個連續序列1-5、4-6和7-8。 分析:這是網易的一道面試題。 這道題和本面試題系列的第10題有些類似。我們用