原创 字符串系列N 後綴樹和Boyer-Moore 算法和 AC 自動機

這幾個算法不常用,等有時間再回來整理吧。 後綴樹 後綴樹好理解,但是線性時間構造後綴樹其實比較複雜,後綴樹在競賽或者實際應用中用得也比前幾種算法少。 後綴樹系列一:概念以及實現原理( the Ukkonen algorithm)

原创 Zeppelin 源碼分析-Interpreter 相關類(1)

和 Interpreter 直接相關類有以下幾個: Interpreter, InterpreterFactory, RemoteInterpreter, InterpreterGroup, InterpreterSettin

原创 Flume 實時收集日誌問題

在寫Flume+Kafka實時收集Mapreduce日誌時,將原來的INFO級別修改爲DEBUG之後,突然發現不能正確輸出,此時我的內心是崩潰的,難道說Flume不支持DEBUG級別的日誌?下圖即是有問題的log4j配置文件:

原创 Flume+Kafka 將不同類別日誌發往不同分區的三種方式的比較

方法1:不修改Flume源碼,只使用Flume配置文件 這種方法的核心思想就是使用selector將各種級別的的日誌發往對應的channel,然後再使用不同的sink去接對應的channel的event併發往Kafka指定分區。具

原创 字符串系列6 最長迴文子串

LeetCode有一道最長迴文子串的題,下面基本是官方解答的翻譯版。 方法1:最長公共子串 常見錯誤 一些人可能會快速想到一個解決方法,然而這個方法卻是錯誤的(但是很容易將它修改成正確的): 將 SSS 反轉成 S′S^\prime

原创 LeetCode 5. Longest Palindromic Substring

Descripition: Given a string s, find the longest palindromic substring in s. You may assume that the maximum length o

原创 約瑟夫問題

問題描述 nnn 個人,編號 000 ~ (n−1)(n-1)(n−1),從1開始報數,報到 mmm 的人退出,下一個人繼續從0開始報數,求勝利者的編號。 勝利者編號問題 這個問題最好想的就是使用一個循環隊列或者循環鏈表解決,但是我們

原创 字符串系列3 最長公共子串

這裏總結了幾種常見的解決最長公共子串問題的方法。 方法1:暴力求解 最簡單的方法當然是暴力啦,遍歷一個字符串的所有子串,然後查看其它字符串是否都含有這個子串,從所有字符串都含有的子串中選一個最大的即可,這適合對時間要求不太緊的情況。

原创 字符串系列1 Rabin-Karp, 有限自動機, KMP, 擴展 KMP

閱讀目錄: 算法導論的四種字符串匹配算法 樸素字符串匹配算法 Rabin-Karp算法 利用有限自動機進行字符串匹配 確定有限自動機簡介 利用有限自動機進行字符串匹配 KMP算法 其他字符串相關算法 KMP 優化 拓展 KMP

原创 字符串系列5 後綴自動機

閱讀目錄: 後綴自動機簡介 後綴自動機相關概念 SAM 的 States SAM 的 Suffix Links SAM 的 Transition Function 線性時間構造後綴自動機 情況一:最簡單情況 情況二:maxlen

原创 字符串系列2 Manacher 算法

原博主已經寫得非常清楚了,這裏我只是將原文轉過來,原博文如下:Manacher算法總結 Manacher算法介紹 Manacher 算法是查找一個字符串的最長迴文子串的線性算法。在介紹算法之前,首先介紹一下什麼是迴文串,所謂迴文串,簡單來

原创 Python 中的字符串與字符編碼

閱讀目錄: 一、前言 二、相關概念 1. 字符與字節 2. 編碼與解碼 三、Python中的默認編碼 1. Python源代碼文件的執行過程 2. 默認編碼 3. 最佳實踐 四、Python2與Python3中對字符串的支持

原创 LeetCode 3. Longest Substring Without Repeating Characters

Descripition: Given a string, find the length of the longest substring without repeating characters. Examples: Given “a

原创 LeetCode 1. Two Sum

Descripition: Given an array of integers, return indices of the two numbers such that they add up to a specific target.

原创 字符串系列4 後綴數組

閱讀目錄: 簡介 倍增法 DC3 最長前綴 附錄 倍增法 C++ 實現( hiho 1403 )通過 DC3算法 C++ 實現( hiho 1403 )通過 簡介 後綴數組就是把一個文本串的所有後綴按字典序從小到大排放的數組