原创 JAVA字符串創建及拼接分析
目錄一、class文件常量池二、運行時常量池三、字符串常量池四、字符串創建案例分析五、字符串+號拼接案例分析六、字符串拼接比較 JAVA主要有三種常量池:class文件常量池、運行時常量池、字符串常量池。 一、class文件常量池
原创 JAVA之list使用
目錄1.定義和初始化2.新增3.刪除4.訪問元素5.查詢元素6.獲取大小7.清空8.判斷是否爲空9.打印10.遍歷11.排序12.list、數組、字符串之間的各種轉換13.線程安全 1.定義和初始化 (1)創建空list,然後逐一
原创 LeetCode4道搜索旋轉數組題—33、81、153、154
LeetCode有4道搜索旋轉數組的題目,這裏一起說了。 目錄33. 搜索旋轉排序數組81. 搜索旋轉排序數組 II153. 尋找旋轉排序數組中的最小值154. 尋找旋轉排序數組中的最小值 II 33. 搜索旋轉排序數組 假設按照
原创 Word2vec降維只有字向量
導入語料庫用txt讀取,不要直接用字符串賦值,不然你會發現降維出來只有字向量,還死活不知道錯在哪。。。
原创 Python安裝docx依賴包裝不上
主要問題是docx受lxml的影響,如果lxml的版本不對的話,docx根本裝不上,不管你用pip,easy_install或者是用源代碼包來裝。 要到https://pypi.python.org/simple/lxml/去下載
原创 計算機存儲整數
採用定點表示法,也就是假設小數點在最右邊,但是並不存儲。 一、無符號表示法 1.範圍:0 ~ 2n-1(n位存儲空間) 2.步驟: (1)將整數變爲二進制數 (2)如果二進制數不夠n位,那就在左邊加0湊足n位;如果超過n位則溢出
原创 KMP算法快速理解
一、最長公共子綴 公共子綴分爲前綴和後綴 前綴:總是包含第一個字符的子串(不包括父串本身) 後綴:總是包含最後一個字符的子串(不包括父串本身) ———————————————————————————— 舉個例子: 父串ABCDEA
原创 「輾轉相除法」和「更相減損術」求最大公約數
一、輾轉相除法 舉個例子,比如155和65 155=65*2+25 65=25*2+15 25=15*1+10 15=10*1+5 10=5*2+0 一直除到餘數爲0爲止,所以最大公約數是5 public static int g
原创 LeetCode 581—最短無序連續子數組
給定一個整數數組,你需要尋找一個連續的子數組,如果對這個子數組進行升序排序,那麼整個數組都會變爲升序排序。你找到的子數組應是最短的,請輸出它的長度。 ————————————————————————————————————
原创 JAVA之ArrayList使用
import java.util.ArrayList;或者import java.util.*; 1.定義和初始化 (1)創建空列表,然後逐一添加 ArrayList L=new ArrayList(); L.add(1);L.a
原创 Manacher算法(求最長迴文子串)
Manacher的主要用途是求一個字符串中包含的最長迴文子串。 一、前期處理 1.原始字符串長度有奇有偶,爲了方便處理字符串,我們使用了一種統一的處理方法。在每個字符兩邊都插入一個特殊字符(注意這個字符一定是原始字符串不包含的
原创 編程之法1.2字符串的包含
題目要求: 給定一長字符串a和一短字符串b。請問,如何最快地判斷出短字符串b中的所有字符是否都在長字符串a中?請編寫函數實現此功能。 爲簡單起見,假設輸入的字符串只包含大寫英文字母。下面舉幾個例子。 1.如果字符串a是"A
原创 編程之法1.1字符串的旋轉
題目要求: 給定一個n位字符串,要求將字符串前面的m個字符移到字符串尾部。 解法一:暴力移位法 也就是要移多少位就一位一位地移。 時間複雜度O(mn),空間複雜度O(1)。 void ShiftOne(char *text
原创 二進制中1的個數
題目描述 : 輸入一個整數,輸出該數二進制表示中1的個數。其中負數用補碼錶示。 方法1:手動轉化法 直接想到的就是手動把數轉化爲二進制存進vector裏,然後去數1的個數。當然這個很麻煩的地方在於負數是用補碼,你把絕對值轉化成
原创 根據二叉樹序列重建二叉樹
二叉樹有前序、中序、後序、層次四種遍歷方式。 層次遍歷我們就不考慮,因爲比較簡單。 我們一般是根據前序和中序、中序和後序這兩種方式來重建二叉樹,注意必須要有中序序列才能唯一確定一棵樹。無論是前序和中序、中序和後序構建思路都