۳ مطلب با کلمه‌ی کلیدی «آموزش الگوریتم» ثبت شده است

الگوریتم وارشال برای بدست آوردن بستار متعدی در زبان راست و پایتون

برای شخص بنده با خوندن کد پایتون خیلی راحت‌تر میتونم الگوریتم را بفهمم.اینجا به ترتیب کد راست و پایتون الگوریتم وارشال برای بدست آوردن بستار متعدی یک ماتریس باینری رابطه به همراه لینک کد در گیت‌هاب گیست قرار داده شده.ضمن اینکه زمان اجرا شدن این کد‌ها برای راست و پایتون در گیست مورد نظر به صورت کامنت قرار داده شده است.توجه کنید که در هر دو زبان با حلقه for این پیاده‌سازی انجام شده و در صورتی که با استفاده از map همین الگوریتم را پیاده کنید پرفرمنس احتمالا بهبود خواهد یافت.

ادامه مطلب...
مجوز مطالب و محتوا ۲۴ ارديبهشت ۰۰ ، ۱۴:۲۸ ۰ نظر موافقین ۱ مخالفین ۰
فاروق کریمی زاده

الگوریتم مرتب‌سازی حبابی + کد پایتون + کد سی + کد سی شارپ + کد سی پلاس پلاس

الگوریتم های مرتب‌سازی آن دسته از الگوریتم هایی هستند که برای مرتب‌سازی یک مجموعه از اعداد و یا حروف و یا اسامی(با توجه به اینکه هر حرف یک ارزش عددی دارد) استفاده میشود.در این مطلب الگوریتم مرتب‌سازی حبابی- که از ساده‌ترین الگوریتم های مرتب‌سازی استمورد بررسی قرار میگیرد.

الگوریتم مرتب‌سازی حبابی یک راه حل سر راست  و واضح دارد.این الگوریتم یک مجموعه از اعداد را پیمایش میکند و هر بار عدد فعلی را با عدد بعدی‌اش مقایسه میکند و در صورتی که از آن بزرگتر باشد جای عدد فعلی با عدد بعدی عوض میشود.یا برعکس اگر بخواهیم مجموعه را به صورت نزولی مرتب کنیم. الگوریتم بارها و بارها مجموعه را مرتب میکند تا آنکه مجموعه مرتب شود.فهمیدن اینکه مجموعه مرتب شده است نیز به دو روش انجام میشود که بترتیب میتوانید بررسی کنید:

  1. در یک دور پیمایش جابجایی صورت نگیرد.یعنی در آن دور عددی پیدا نشود که از عدد بعدی خود بزرگتر(یا بصورت نزولی کوچکتر) باشد و جایش با عدد بعدی عوض نشود.
  2. روش دوم که روش من درآوردی است(خودم ساختمش!) این است که یک تابع جدا بنویسید که یکبار مجموعه را از اول تا آخر پیمایش کند و اگر عددی پیدا نشد که از عدد بعدیش بزرگتر باشد پس فهرست‌ما مرتب است.
روش پیشنهاد شده روش اول است.
ادامه مطلب...
مجوز مطالب و محتوا ۰۷ خرداد ۹۵ ، ۱۰:۰۰ ۲ نظر موافقین ۰ مخالفین ۰
فاروق کریمی زاده

دانلود کتاب آموزش الگوریتم های مرتب سازی

این کتاب الگوریتم های مرتب سازی(حبابی،سریع و ...) را به همراه کد سی پلاس پلاس هر الگوریتم آموزش میدهد.


حجم: 1.41 مگابایت

مجوز مطالب و محتوا ۰۷ ارديبهشت ۹۵ ، ۱۰:۰۰ ۴ نظر موافقین ۲ مخالفین ۰
فاروق کریمی زاده