字典樹 增刪查改變式

2021-09-11 04:05:13 字數 1234 閱讀 4662

度熊手上有一本神奇的字典,你可以在它裡面做如下三個操作: 

1、insert : 往神奇字典中插入乙個單詞 

2、delete: 在神奇字典中刪除所有字首等於給定字串的單詞 

3、search: 查詢是否在神奇字典中有乙個字串的字首等於給定的字串 

input

這裡僅有一組測試資料。第一行輸入乙個正整數n(1≤n≤100000)n(1≤n≤100000),代表度熊對於字典的操作次數,接下來nn行,每行包含兩個字串,中間中用空格隔開。第乙個字串代表了相關的操作(包括: insert, delete 或者 search)。第二個字串代表了相關操作後指定的那個字串,第二個字串的長度不會超過30。第二個字串僅由小寫字母組成。

output

對於每乙個search 操作,如果在度熊的字典中存在給定的字串為字首的單詞,則輸出yes 否則輸出 no。

sample input

5

insert hello

insert hehe

search h

delete he

search hello

sample output

yes

no

注意遞迴刪除和新增字典樹的寫法。

#include#include#include#include#includeusing namespace std;

const int maxn = 26;

struct trie

}};trie *root =(trie*)malloc(sizeof(trie));

inline void deltrie(trie * t)

}free(t);

return;

}void createtrie(char *str,bool isdel)

else

}else

else}}

if(isdel)

p->next[idx]->flag-=delnum;

p=p->next[idx];}}

}bool findstr(char *str)

return true;

}int main(void)

else if(strcmp(command, "delete")==0)

else

}deltrie(root);

return 0;

}

字典樹(增刪改查 HDU 5687)

度熊手上有一本神奇的字典,你可以在它裡面做如下三個操作 1 insert 往神奇字典中插入乙個單詞 2 delete 在神奇字典中刪除所有字首等於給定字串的單詞 3 search 查詢是否在神奇字典中有乙個字串的字首等於給定的字串 input這裡僅有一組測試資料。第一行輸入乙個正整數n 1 n 10...

python 字典的增刪查

情況1 如果字典中沒有這個鍵值對,則直接追加在字典的後面 情況2 如果字典中由這個鍵值對,則直接修改這個key值對應的value值 情況3 新增多個key value值,上面兩種情況的結合 情況4 另外一種新增方式,新增結果還是上面幾種情況的結合 情況5 setdefault新增key值 如果key...

字典的增刪改查。

增 有則修改,無則新增 dic key 要增加的內容 如果dict中沒有出現這個key,就會新增 乙個key value的組合進dict 有則不變,無則新增 dic.setdefault 李嘉誠 也可以往 裡 面設定值.dic.setdefault 李嘉誠 房地產 如果dict中已經存在了.那麼se...