ورود

نسخه کامل مشاهده نسخه کامل : ميشه يك ليست پيوندي يك طرفه رو با quick sort مرتب كرد؟



behnaz afroz
19-01-2007, 14:24
ممنون ميشم هر چه سريعتر جواب بديد ؟
و اگه ميشه چطوري؟

hamidreza_buddy
20-01-2007, 15:36
سلام
آره میشه. دفعه پیش که این سئوالو پرسیدین گفتم نمیشه چون فک می کردم نمیشه خیلی effivcient انجامش داد. ولی یکم روش فکر کردم دیدم میشه!
به شبه الگوریتم زیر دقت کنید:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
میبینید لازمه از یه متغییری به نام left تا right بری و یه سری جابجایی انجام بدی و دوباره quicksort رو روی زیر آرایه انجام بدی. اگه خوب متوجه نشدین که چرا این جابجایی ها رو انجام می دیم به شبه کد زیر دقت کن:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
می بینید که آرایه رو به دو قسمت کوچکتر از pivot و بزرگتر از pivot تقسیم می کنیم (pivot یه متغییر دلخواه
که هر دفعه از بین یکی از اعضای آرایه انتخاب میشه) و سپس روی اون قسمت ها quicksort رو انجام می دیم.
حالا واسه نوشتن الگوریتم واسۀ یه لیست پیوندی اینه که از left تا right رو به روش لیست پیوندی طی کنیم(مثلاً بوسیلۀ next):

khanom13
09-06-2007, 22:15
برنامه ادغام و مرتب سازي ليست پيوندي خواهشن

khanom13
09-06-2007, 22:19
الگوريتم ادغام و مرتب سازي ليست پيوندي

khanom13
09-06-2007, 22:21
الگريتم ادغام و مرتب سازي ليست پيوندي

hamidreza_buddy
13-06-2007, 21:46
خوب الگوریتم بالا الگوریتم مرتب سازیه دیگه!

masterhe3ar
21-08-2012, 19:39
آقایون ازتون خواهش میکنم کمکم کنید،من فردا تحویل پروژه دارم نمیدونم چیکار کنم
کسی هست بتونه پروژه زیرو به هر زبانی که شده واسم بنویسه؟ تورو خدا کمکم کنید

برنامه ای بنویسید که عناصر استک آ با سایز 10 از ورودی دریافت کند سپس با استفاده ار حداقل ساختمان داده اضافی

عناصر استک آ را وارد استک خالی بی کند
به نحوی که ترتیب عناصر در بی همان ترتیب در آ باشد

در دو حالت
الف:
جهت پیاده سازی ساخمان داده های مورد نیاز از آرایه استفاده کنید
ب:
از لیست های پیوندی

اگه کسی تونست واسم میل کنه یا خبرم بده اینم ایمیلم
leila_falah@yahoo.com