91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java 中怎么實現DFA算法

發布時間:2021-08-13 17:26:42 來源:億速云 閱讀:341 作者:Leah 欄目:開發技術

Java 中怎么實現DFA算法,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

DFA全稱為:Deterministic Finite Automaton,即確定有窮自動機。其特征為:有一個有限狀態集合和一些從一個狀態通向另一個狀態的邊,每條邊上標記有一個符號,其中一個狀態是初態,某些狀態是終態。但不同于不確定的有限自動機,DFA中不會有從同一狀態出發的兩條邊標志有相同的符號。

Java 中怎么實現DFA算法

簡單點說就是,它是是通過event和當前的state得到下一個state,即event+state=nextstate。理解為系統中有多個節點,通過傳遞進入的event,來確定走哪個路由至另一個節點,而節點是有限的。

3.敏感詞搜尋中的DFA算法

3.1敏感詞庫構造描述

以王八蛋和王八羔子兩個敏感詞來進行描述,首先構建敏感詞庫,該詞庫名稱為SensitiveMap,這兩個詞的二叉樹構造為:

 Java 中怎么實現DFA算法

用hash表構造為:

 Java 中怎么實現DFA算法

3.2基于敏感詞庫收索算法的描述

以上面例子構造出來的SensitiveMap為敏感詞庫進行示意,假設這里輸入的關鍵字為:王八不好,流程圖如下:

  Java 中怎么實現DFA算法

4.代碼編寫

4.1構造敏感詞實現代碼

Java 中怎么實現DFA算法

4.2實現敏感詞查詢代碼

Java 中怎么實現DFA算法

5.優化思路

5.1敏感詞中間填充無意義字符問題

對于“王*八&&蛋”這樣的詞,中間填充了無意義的字符來混淆,在我們做敏感詞搜索時,同樣應該做一個無意義詞的過濾,當循環到這類無意義的字符時進行跳過,避免干擾。

5.2敏感詞用拼音或部分用拼音代替

兩種解決思路:一種是最簡單是遇到這類問題,先豐富敏感詞庫進行快速解決。第二種是判斷時將敏感詞轉換為拼音進行對比判斷。

不過目前這兩種方案均不能徹底很好的解決該問題,此類問題還需進一步研究。

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

沾益县| 万盛区| 且末县| 许昌市| 宁国市| 曲水县| 庆阳市| 婺源县| 洮南市| 万安县| 清徐县| 张家界市| 科技| 拜泉县| 万盛区| 玛多县| 新乐市| 滦南县| 江都市| 濉溪县| 华容县| 诸城市| 无棣县| 平阴县| 新巴尔虎左旗| 阿拉善右旗| 横峰县| 五河县| 福建省| 达拉特旗| 长丰县| 新巴尔虎右旗| 泰顺县| 黔西| 湖口县| 密山市| 平凉市| 广昌县| 岳普湖县| 安义县| 荔波县|