原创 哈希,哈希函數,散列表,你知多少?

哈希,哈希函數,散列表,他們之間有密切的關係,但是很多不懂的小白會搞混他們分別是幹什麼的,下面分別說一下他們的作用和特點 首先說的是哈希,哈希是密碼學的基礎,理解哈希是理解數字簽名和加密通信等技術的必要前提。 哈希,英文是 h

原创 多線程 實現同步文件查找

用java實現文件查找,我們用多線程與單線程實現,對比一下使用多線程的區別 單線程 假設你的項目目錄是 e:/project,遍歷這個目錄下所有的java文件(包括子文件夾),找出文件內容包括 Magic的那些文件,並打印出

原创 多線程 LOCK對象同步解決死鎖

與synchronized類似的,lock也能夠達到同步的效果,在說LOCK對象時,先來說一下synchronized 同步的方式。 synchronized 同步的方式 首先說一下synchronized 同步對象的方式 當

原创 【每天一題】劍指 Offer 04. 二維數組中的查找

在一個 n * m 的二維數組中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成一個函數,輸入這樣的一個二維數組和一個整數,判斷數組中是否含有該整數。 示例: 現有矩陣 matrix 如下:

原创 【每天一題】劍指 Offer 07. 重建二叉樹

根據一棵樹的前序遍歷與中序遍歷構造二叉樹。 注意: 你可以假設樹中沒有重複的元素。 例如,給出 前序遍歷 preorder = [3,9,20,15,7] 中序遍歷 inorder = [9,3,15,20,7] 返回如下的二

原创 【每天一題】劍指 Offer 10- II. 青蛙跳臺階問題

一隻青蛙一次可以跳上1級臺階,也可以跳上2級臺階。求該青蛙跳上一個 n 級的臺階總共有多少種跳法。 答案需要取模 1e9+7(1000000007),如計算初始結果爲:1000000008,請返回 1。 示例 1: 輸入:n

原创 【每天一題】劍指 Offer 10- I. 斐波那契數列

寫一個函數,輸入 n ,求斐波那契(Fibonacci)數列的第 n 項。斐波那契數列的定義如下: F(0) = 0, F(1) = 1 F(N) = F(N - 1) + F(N - 2), 其中 N > 1. 斐波那契數

原创 【每天一題】劍指 Offer 09. 用兩個棧實現隊列

用兩個棧實現一個隊列。隊列的聲明如下,請實現它的兩個函數 appendTail 和 deleteHead ,分別完成在隊列尾部插入整數和在隊列頭部刪除整數的功能。(若隊列中沒有元素,deleteHead 操作返回 -1 ) 示

原创 【每天一題】劍指 Offer 06. 從尾到頭打印鏈表

輸入一個鏈表的頭節點,從尾到頭反過來返回每個節點的值(用數組返回)。 示例 1: 輸入:head = [1,3,2] 輸出:[2,3,1] 用棧打印 棧的特點是後進先出,即最後壓入棧的元素最先彈出。考慮到棧的這一特點,使

原创 【每天一題】劍指 Offer 05. 替換空格

請實現一個函數,把字符串 s 中的每個空格替換成"%20"。 示例 1: 輸入:s = "We are happy." 輸出:"We%20are%20happy." 題解: class Solution { pub

原创 IDEA使一個SpringBoot不同端口同時啓動

SpringBoot多次啓動同一個main 方法 啓動多個端口‘,同時啓動8011,8012,8013

原创 idea分佈式創建子模塊後不能創建java文件

問題描述 創建子項目,無法識別java類,不能運行主函數 創建文件,找不到java文件創建方法 問題解決 右鍵將文件標記爲Sources Root便可以了,如果想要標記爲資源文件的話就點Resources Root

原创 編碼規範相關問題總結

一節 關於多線程並行處理定時任務的情況,下列哪些說法符合 《阿里巴巴Java開發手冊》: BCD A .推薦使用Timer方式處理。 B .推薦使用ScheduledExecutorService方式處理。 C .Timer運

原创 談談我對分佈式與集羣的理解

前幾天做了一個微服務的趨勢投資的小項目,現在對我這個項目學到的知識,以及我對一些概念的理解做一下總結 首先介紹一下這個項目,這是一個趨勢投資的項目,簡單來說就是,根據不同的篩選條件,選出合適的股票指數基金,進行趨勢投資。關於什

原创 【每天一題】Leetcode-1兩數之和

給定一個整數數組 nums 和一個目標值 target,請你在該數組中找出和爲目標值的那 兩個 整數,並返回他們的數組下標。 你可以假設每種輸入只會對應一個答案。但是,數組中同一個元素不能使用兩遍。 示例: 給定 nums