From d3dc0ff24093e89127c11dd4a89a14f9ca7a17ed Mon Sep 17 00:00:00 2001 From: wyy Date: Thu, 10 Apr 2014 13:24:53 +0800 Subject: [PATCH] remove isLeaf is flag --- src/Trie.hpp | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/src/Trie.hpp b/src/Trie.hpp index ff88e79..042f08d 100644 --- a/src/Trie.hpp +++ b/src/Trie.hpp @@ -30,9 +30,8 @@ namespace CppJieba struct TrieNode { TrieNodeMap hmap; - bool isLeaf; const TrieNodeInfo * ptTrieNodeInfo; - TrieNode(): isLeaf(false), ptTrieNodeInfo(NULL) + TrieNode(): ptTrieNodeInfo(NULL) {} }; @@ -104,11 +103,7 @@ namespace CppJieba } p = citer->second; } - if(p->isLeaf) - { - return p->ptTrieNodeInfo; - } - return NULL; + return p->ptTrieNodeInfo; } bool find(Unicode::const_iterator begin, Unicode::const_iterator end, DagType & res, size_t offset = 0) const @@ -123,7 +118,7 @@ namespace CppJieba break; } p = citer->second; - if(p->isLeaf) + if(p->ptTrieNodeInfo) { res[itr - begin + offset] = p->ptTrieNodeInfo; } @@ -157,7 +152,6 @@ namespace CppJieba } - ptNode->isLeaf = true; ptNode->ptTrieNodeInfo = &nodeInfo; }