DEBUG.IR
P r o g r a m m i n g  S o l u t i o n
وبلاگ شروین

درخت
سلام،
فواید درخت و درختکاری بر همگان واضح و مبرهن است و نیاز به اشاره به آن نیست..، درخت در کامپیوتر و ساختمان داده‌ها هم خیلی مفید و به درد بخور است.
من نمی‌خوام درباره‌ی ساختمان داده‌ی درخت توضیح بدم، فقط مثالی که میزنم راجع به درخت جستجوی دودویی است.
اصل مطلب اینه که؛ خیلی‌ها فکر می‌کنن چون دات نت چیزی دقیقاً مثل اشاره‌گرها در C++‎ نداره پس خیلی از چیزهایی رو که با استفاده از اشاره‌گر پیاده می‌کردن، دیگه نمی‌تونن با دات نت درست کنن. مثلاً در رابطه با لیست پیوندی و هر چیزی که با اون درست بشه این جور فکر می‌کنن.
غافل از اینکه دات نت یه چیزی داره که پدر اشاره‌گره! و اون چیزی نیست جز Reference.
این مثال، درخت جستجوی دودویی است که چند دقیقه‌ی پیش نوشتم.
کلاس BSTree یه درخت جستجوی دودویی نُقلیه. با تابع Insert می‌توان به آن عنصری را اضافه کرد و با تابع Search می‌توان وجود عنصری را در درخت بررسی کرد و تهایتاً با تابع Remove می‌توان عنصری را حذف کرد. توجه کنید که این درخت خیلی نقلی است و می‌تونه خیلی کامل‌تر باشه.
یک کلاس هم به نام TreeNode در داخل BSTree است که گره درخت است.

موفق باشید.
  توسط Shervin Ketabi در ساعت 10:43:24 روز 2005/05/26 فرستاده شده :
کلیه حقوق این سایت به شروین کتابی و علی کمالیان تعلق دارد.
شما حق دارید از مطالب این سایت هر طور که مایلید با ذکر منبع استفاده کنید به شرط آنکه در قبال آن هیچگونه وجهی دریافت نکنید. البته احتمالا هیچ قانونی از این امر حمایت نمیکند !