۱۴۰۰/۰۷/۳۰

لیست پیوندی  یک طرفه حلقوی در ساختمان داده ها

لیست پیوندی  یک طرفه حلقوی ۱۳۹۸/۰۴/۲۶

لیست پیوندی  یک طرفه حلقوی

در لیست پیوندی خطی node آخر نال نیست.در واقع این node مقداری برابر head دارد.یعنی اشاره گر آخرین node به اولین node اشاره میکند.این لیست دیگر ابتدا و انتها نداردبلکه اگر آدرس یک خانه یا یک node را داشته باشیم به تمامی node ها می توانیم دسترسی داشته باشیم.

لیست پیوندی یک طرفه حلقوی در ساختمان داده

لیست دوطرفه:

این لیست مشابه لیست یک طرفه است با این تفاوت که هر node علاوه بر اینکه می تواند به node بعدی اشاره کند میتواند به node قبلی نیز اشاره کند.

در این نوع لیست با داشتن آدرس هر گره می توانیم به node بعدی و node قبلی دسترسی پیدا کنیم.در واقع با داشتن آدرس هر گره میتوان کل لیست را پیمایش کرد.

شبه کد تعریف لیست دو طرفه در ساختمان داده ها

typeof struct node{
node * link;
item,data;
node *rlink;
}
node head;
node *temp;
temp=new (node);

حذف node x از لیست دوطرفه

x->link->rlink=x->rlink;
x->rlink->llink=x->link;
delete item;

اضافه کرد node جدید بعد از آدرس node با آدرس x

node *temp;
temp = new(node);
temp.rlink=x->rlink;
x->rlink->link=x->link;
temp->llink=x->link;
x->rlink->llink=x->rlink;

نکته

از مثال های کاربرد لیست ها را میتوان :۱-پیاده کرد صف و پشته با استفاده از لیست ها و پیاده سازی چند جمله ای ها در حافظه را اشاره کرد


رای :

لیست پیوندی  یک طرفه حلقوی

ارسال نظر
Copyright © All right reserved.