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;
}
注意:画像ブログ