نقشه درختی مربعی از کلمات ورودی در سی شارپ
نقشه درختی مربعی یک ساختار دادهای است که به ما اجازه میدهد تا کلمات ورودی را به صورت ساختاریافته و کارآمد ذخیره کنیم. این نوع نقشه درختی به ویژه در پردازش متن، جستجوی کلمات و تجزیه و تحلیل دادهها کاربرد دارد.
ایجاد کلاس درختی
برای شروع، ما نیاز به یک کلاس داریم که نمایانگر هر گره در درخت باشد. این کلاس شامل ویژگیهایی برای ذخیرهسازی کلمه و فرزندان آن است.
```csharp
public class TreeNode
{
public string Word { get; set; }
public Dictionary<char, TreeNode> Children { get; set; }
public TreeNode(string word)
{
Word = word;
Children = new Dictionary<char, TreeNode>();
}
}
```
در اینجا، هر گره کلمهای را ذخیره میکند و فرزندان آن به صورت یک دیکشنری از حروف ذخیره میشوند.
اضافه کردن کلمات به درخت
برای اضافه کردن کلمات به درخت، باید یک متد تعریف کنیم که از هر حرف کلمه برای پیمایش درخت استفاده کند.
```csharp
public void AddWord(string word)
{
TreeNode currentNode = root;
foreach (char letter in word)
{
if (!currentNode.Children.ContainsKey(letter))
{
currentNode.Children[letter] = new TreeNode(letter.ToString());
}
currentNode = currentNode.Children[letter];
}
currentNode.Word = word; // کلمه کامل را ذخیره کنیم
}
```
این متد به ما اجازه میدهد تا کلمات را به درخت اضافه کنیم. اگر حرف جدیدی وجود نداشته باشد، گره جدیدی ایجاد میشود.
جستجو در درخت
برای جستجو در درخت، ما میتوانیم یک متد دیگر تعریف کنیم که بررسی کند آیا کلمهای در درخت وجود دارد یا خیر.
```csharp
public bool SearchWord(string word)
{
TreeNode currentNode = root;
foreach (char letter in word)
{
if (!currentNode.Children.ContainsKey(letter))
{
return false; // کلمه وجود ندارد
}
currentNode = currentNode.Children[letter];
}
return currentNode.Word == word; // بررسی کلمه کامل
}
```
این متد به ما امکان میدهد تا به راحتی کلمات را جستجو کنیم و از کارایی بالای درخت بهرهمند شویم.
نتیجهگیری
با استفاده از نقشه درختی مربعی، ما میتوانیم کلمات را به طور مؤثر ذخیره و جستجو کنیم. این ساختار دادهای به ما امکان میدهد تا عملکرد بهتری در پردازش دادهها داشته باشیم و به راحتی با مجموعهای از کلمات کار کنیم.
به این ترتیب، درختی مربعی از کلمات ورودی در سی شارپ به ما کمک میکند تا به طور سازمانیافته با دادهها کار کنیم و از مزایای آن بهرهبرداری کنیم.