亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

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

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

锡林郭勒盟| 土默特右旗| 镇平县| 府谷县| 正镶白旗| 双桥区| 盱眙县| 渭南市| 东港市| 龙口市| 云龙县| 浪卡子县| 普兰店市| 嵊州市| 梁山县| 平顶山市| 梧州市| 阿克苏市| 林西县| 行唐县| 临汾市| 皮山县| 思茅市| 临安市| 南皮县| 苍溪县| 泰宁县| 密山市| 中西区| 恩平市| 平顺县| 剑川县| 丰台区| 修水县| 南华县| 河津市| 云安县| 长治县| 焦作市| 吉首市| 武定县|