Trueデータ構造
👏 は、接頭辞標準の短い文字列を検索するときに最適化される資料構造です。
ツリーリンクリスト形式で表示される「文字数」(O(n)時間
😊 速いですが、メモリが多すぎます。
各ワードはノードを作成し、ノード内に26個(アルファベット大文字)のポインタを書きます.
サムスン、Kakaoはたまに1、2つの問題を出します
MST、TRIE、Union-Findの3種類は基本的に蓄積してから勉強します
◠基本ソースコード
#include<iostream>
#include<string>
using namespace std;
struct Node {
char ch;
Node* next[26]; //대문자 26개
//int cnt 까지 추가 하여 활용가능
};
Node* head;
void init() {
head = new Node();
head->ch = '#'; //처음 노드(스타트값)
}
void insert(string str) {
Node* now = head; //head가리키고 시작
for (int i = 0; i < str.size(); i++) { //한글자씩 탐색
int index = str[i] - 'A'; //0번 index
if (now->next[index] == NULL) {
now->next[index] = new Node();
now->next[index]->ch = str[i];
}
now = now->next[index];
}
}
int main() {
init();
insert("ABC");
insert("ABS");
insert("ABCD");
return 0;
}
注意:画像ブログReference
この問題について(Trueデータ構造), 我々は、より多くの情報をここで見つけました https://velog.io/@trevor522/Trie-자료구조テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol