原创 頭條面試題(1-找零問題)

問題: 有4種硬幣,分別價值:1、4、16、64元;一種紙幣,價值:1024元。 小明去超時買東西,共花費N元(0<N<1024),他拿出一張紙幣給售貨員,售貨員只有硬幣可以給小明。問:售貨員最少找給小明多少個硬幣?   思路:貪心算法,

原创 18、快速排序(代碼)

先分享個視頻教學網址,講的很nice! https://www.bilibili.com/video/BV1it41167v2?from=search&seid=7944545082422790984 概念 快速排序的基本思想:通過一趟

原创 linux下啓動和關閉jar項目

1、自己將項目(比如用springboot框架寫的項目)打包成jar包,然後我們需要將它用軟件傳輸到linux版本的服務器上(服務器提前安裝好JDK>=1.8)。 2、自己編寫sh命令,用於啓動和關閉項目,並打印日誌信息到服務器本地。 1

原创 關於sigmod激活函數圖像不是以0爲中心的問題探討

這個問題之前也遇到過,沒有深究,最近一位網友向我詢問此事,我總結如下: 首先我們要知道反向傳播的流程: 1、概念: 前項傳播:                                                       

原创 Java一個漢字佔幾個字節(詳解與原理)

目錄   1、先說重點: 2、以下是源碼: 3、運行結果  4、幾種編碼格式的簡單介紹 5、字符編碼的歷史故事 6、一個字符爲什麼佔兩個字節 7、深入分析 Java 中的中文編碼問題(轉載) Java 中需要編碼的場景 Java 中如何編

原创 33、哈夫曼解壓(有問題,待解決)

哈夫曼編碼的時候,我們得到了哈夫曼哈希表、編碼後的字節數組,我們根據這兩個,便可以進行解碼。 思路: 1、首先將字節數組轉化爲二進制字符串: /** * 將一個byte 轉成一個二進制的字符串, 如果看不懂,可以參考我講的Java基

原创 32、哈夫曼編碼之數據壓縮

前言: 前面講了如何如何生成哈夫曼樹,如何用哈夫曼樹進行編碼,進而得到哈夫曼哈希表,本節主要講實例,如何對字符串進行壓縮展示。 思路: 1、將字符串用生成哈夫曼樹,生成哈夫曼哈希表 2、將原byte[]通過哈夫曼哈希表,生成新的byte[

原创 34、哈夫曼樹壓縮文本和解壓文本

思路: 利用輸入流和輸出流進行文本的讀出和寫入,注意:壓縮文件時會用到對象流(ObjectOutputStream寫入文件),解壓文件時,也會用到對象流(ObjectInputStream,讀出文件) 代碼: //壓縮文件 publi

原创 35、二叉排序樹的添加和刪除節點

思路: 二叉排序樹的定義:形如圖1所示,每棵二叉樹有一個根節點,根節點下面至多有兩個子節點,每個節點只能最多有兩個分支節點,並且左側分支子節點數值小於父節點數值,右側子節點數值大於父節點數值。