ورود

View Full Version : حرفه ای: درخواست راهنمایی برای زبان برنامه نویسی



amirheavy666
دوشنبه 04 مرداد 1389, 22:13 عصر
با سلام
من یه برنامه با مطلب دارم که وقتی اونو می خوام با run هزار بار انجام بدم تقریبا 30 - 40 دقیقه وقت می بره . می خواستم بدونم اگه این برنامه با همین چارچوب با C نوشته شود سرعت 1000 بار run به کمتر از یک دقیقه می رسد یا نه .. و در مورد 5000 بار Run و 50000 بار run وضعیت چکونه خواهد بود ؟

علاوه بر C چه برنامه ای می توانید این مسئله را در چنین زمانی حل کند ؟؟؟


لطفا سریع پاسخ دهید ....با تشکر

PC2st
دوشنبه 04 مرداد 1389, 22:46 عصر
اجرای یک برنامه و بستن آن به تکرار ۱۰۰۰ بار کار صحیحی نیست. اگر نیاز به کارهای تکراری دارید، این کارهای تکراری را درون برنامه انجام دهید. یعنی برنامه را فقط یک بار اجرا کنید و بگذارید آن برنامه کارهای تکراری را درون خودش انجام دهد.
بطور کلی، اگر می‌خواهید برنامه‌ای بنویسید که به سرعت اجرا و خاتمه یابد، باید هر قدر که می‌توانید از پردازش‌های اضافه خودداری کنید و حجم آن را کوچک نگهدارید.

amirheavy666
دوشنبه 04 مرداد 1389, 23:01 عصر
موضوع یک الگوریتم فرا ابتکاری که 1000 بار باید Run شود تا بهترین جواب بدست آمده نمایش داده شود با جستجوی همسایگی و .....

amirheavy666
دوشنبه 04 مرداد 1389, 23:04 عصر
برنامه بسته نمی شود در هر بار run یک جواب تولید می شود و تا 1000 بار و بیشتر این کار تکرار می شود ولی سرعت این 1000 بار در مطلب بسیار پایین است..........

Nima_NF
سه شنبه 05 مرداد 1389, 01:11 صبح
تنها راه این هست که در ++C نیز تست کنید تا ببینید این زمان چقدر تغییر می کند.
matlab ممکن است که کمی سرباز اضافی داشته باشد، اما انتظار نداشته باشید که ++C یا سایر زبان ها 40 برابر زمان اجرا را کاهش دهند، این بستگی به CPU دارد.
اگر تفاوت چندانی نداشت، باید به فکر بهینه کردن الگوریتم باشید تا به نوعی افزایش سرعت داشته باشید.

Salar Ashgi
شنبه 09 مرداد 1389, 00:32 صبح
البته یه نکته قابل توجه اینه که معمولا الگوریتم های مطلب به بهینه ترین شکل ممکن نوشته شده اند ، مثلا

شما وقتی میخوای ریشه های یه معادله درجه 10 رو پیدا کنی ، خیلی ساده در عرض چند ثانیه جوابش

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

غیر بهینه طراحی شود ./

موفق باشید .