原创 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的個數。當然這個很麻煩的地方在於負數是用補碼,你把絕對值轉化成

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

  二叉樹有前序、中序、後序、層次四種遍歷方式。   層次遍歷我們就不考慮,因爲比較簡單。   我們一般是根據前序和中序、中序和後序這兩種方式來重建二叉樹,注意必須要有中序序列才能唯一確定一棵樹。無論是前序和中序、中序和後序構建思路都