PDA

View Full Version : سوال: معرفی کتابی برای آشنایی با الگوریتم ها



aezvenoos
چهارشنبه 13 اردیبهشت 1391, 21:14 عصر
با سلام
من برنامه نویسی c++ را در حد کتاب دایتل بلدم ولی تو الگوریتم ها مشکل دارم
شما یه منبعی یا کتابی یا .... سراغ ندارید که صرف روی الگوریتم و شبه کد اون کار کرده باشه خیلی هم نمی خوام سطح بالا باشه
ممنون

maktoom
چهارشنبه 13 اردیبهشت 1391, 23:00 عصر
سلام
در زمینه ادامه برنامه نویسی، دست روی نقطه درستی گذاشتید.
از کتاب طراحی الگوریتم نئوپولیتین می تونید استفاده کنید. بزودی دیگاهتون در مورد کد زدن کلا عوض میشه! و درمقابل یک دوراهی قرار می گیرید:
کد زدن تحقیقاتی
کد زدن تجاری
که البته هردوش رو باید تجربه کنید.

one hacker alone
چهارشنبه 13 اردیبهشت 1391, 23:15 عصر
در حد کتاب دایتل یعنی خیلی امیدوارم در این حد بلد باشین خوب شما کتاب طراحی الگوریتم بگیرید بخونید مولف خاصی تو ذهنم نیست تو این کتاب شما به یه سری الگوریتم های معروف آشنا میشین و از روش های الگویتم نویسی که معرفی شده میتونید الگوریتم های بهینه برای مسائل بنویسید
مهمترین چیز تمرین کردن در نوشتن برنامه ها هست تا میتونید مسئله حل کنید

aezvenoos
چهارشنبه 13 اردیبهشت 1391, 23:27 عصر
در حد کتاب دایتل یعنی خیلی امیدوارم در این حد بلد باشین خوب شما کتاب طراحی الگوریتم بگیرید بخونید مولف خاصی تو ذهنم نیست تو این کتاب شما به یه سری الگوریتم های معروف آشنا میشین و از روش های الگویتم نویسی که معرفی شده میتونید الگوریتم های بهینه برای مسائل بنویسید
مهمترین چیز تمرین کردن در نوشتن برنامه ها هست تا میتونید مسئله حل کنید
:لبخند:
منظورم اون جلد ۱و۲ هستش ها !!!!
همه همه اش را که نه ولی ۷۵ تا ۸۰ درصدش را میشه گفت کار کردم!

one hacker alone
پنج شنبه 14 اردیبهشت 1391, 00:19 صبح
مهم اینه که اون 20 درصدی که نخوندی مربوط به کدوم بخش هست
البته کتاب های دایتل ترجمه شده هیچ کدوم کامل نیستن من خیلی دنبال کاملش گشتم نبود
کار کردن روی برنامه ها و پروژهای تحقیقاتی وقت آزاد میخواد که اگه داشته باشین ضرر نمیکنین

aezvenoos
پنج شنبه 14 اردیبهشت 1391, 09:00 صبح
مشکل من اینجاست که باید الگوریتم کار رو بدونم نه اصول برنامه نویسی رو (به هیچ وجه نمی گم فولم !!!)
بارها شده دوستان الگوریتمش رو نوشتن برنامه نویسی رو توش موندن که من نوشتم!!
نمی دونم چه دردیه!!!

one hacker alone
پنج شنبه 14 اردیبهشت 1391, 12:21 عصر
ببینید برخی از برنامه ها الگوریتم حلش قبلا نوشته شده خوب شما باز با این وجود نمیدونی برنامه x رو چجوری بنویسی چون قبلا با این الگوریتم کار نکردی
در نتیجه شما در حل برنامه ها با الگوریتم های تکراری با الگوریتم ها آشنا میشین و در بین اینها از هرکدوم یه نکته میگیرین که در حل برنامه های جدید میتونید به کار بگیرین

maktoom
پنج شنبه 14 اردیبهشت 1391, 23:36 عصر
وقتی با مفهومی به نام درجه پیچیدگی یک الگوریتم آشنا شدی، بهتر متوجه میشی. ممکنه حتی روزی برسه که چیزی که می خوای کلا با الگوریتم های ترتیبی که روزی ممکنه به اوج تسلط هم برسی، بهش نرسی. اونوقته که این سواد برنامه نویسیت به کارت میاد. چون اونموقع مجبور می شی به الگوریتم های موازی روی بیاری. ولی فعلا همین الگوریتمهای ترتیبی رو جدا وقت بذار یاد بگیری.
منظور از الگوریتم های ترتیبی یه راه حل خاص نیست. منظور یه روش خاص واسه یه طیف گسترده از مسائله. که کلا چنتا استراتژی داریم. اینا رو باید بقدری مسلط بشی که بتونی یه مسئله رو به چند روش حل کنی.(کد بزنی)
مثال سادش انواع مختلف روش مرتب سازی هستش. شاید در نگاه اول مثلا 10(n تا) تا عدد رو مگه میشه به چند روش مرتب کرد؟ کار وقتی جالب میشه که بدونی بیش از 10 تا و 20 تا و... روش مرتب سازی همین 10 تا عدد وجود داره!
یه درسی در رشته کامپیوتر هست به نام طراحی الگوریتم ها. وبعد از اون هوش مصنوعی. که کلا بحثش همینه. که هر مسئله با توجه به فضایی که با خودش داره چه راه حلی براش بهتره. چه الگوریتمی رو باید براش بکار زد.
و چقدر مهمه همون درجه پیچیدگی اون الگوریتم خیلی زیاد نشه. این زیاد شدن رو با خوندن کتاب نئوپولیتین بهتر متوجه میشی. و راههای زیاد نشدنش در حد امکان.
موفق باشی.