Forwarded from آموزش برنامه نویسی - از مبتدی تا حرفه ای
از جمله مهمترین الگوریتم هایی که در این روش قرار میگیرن عبارت هستن از :
1-جست و جوی دودویی
2-مرتب سازی ادغامی
3-مرتب سازی سریع
4-الگوریتم استراسن
1-جست و جوی دودویی
2-مرتب سازی ادغامی
3-مرتب سازی سریع
4-الگوریتم استراسن
Forwarded from آموزش برنامه نویسی - از مبتدی تا حرفه ای
البته مشخص هست که چنین روشی (یعنی الگوریتم های موجود در این روش ) در همه جا کاربرد مطلوب نداره و ممکنه در بعضی از موقعیت ها اصلا مارو به جواب نرسونه و یا کارآمدی فوق العاده پایینی داشته باشه . اصولا برای همین هست که روش های گوناگون و الگوریتم های گوناگونی به وجود میان . پس بهتر هست با انواع مختلف روش ها آشنا بشیم و از هرکدوم در موقعیت های مخصوص به خودشون استفاده کنیم .
Forwarded from آموزش برنامه نویسی - از مبتدی تا حرفه ای
مهمترین جاهایی که الگوریتم های موجود در روش تقسیم و حل در اونها جواب نمیده عبارت هستن از :
Forwarded from آموزش برنامه نویسی - از مبتدی تا حرفه ای
1- زمانی که نمونه ای با اندازه ی n به دو یا چند نمونه تقسیم بشه که اندازه ی اونها هم تقریبا n باشه .
در این حالت معمولا پیچیدگی زمانی الگوریتم به صورت نمایی خواهد بود که اصلا جالب نیست !!
در این حالت معمولا پیچیدگی زمانی الگوریتم به صورت نمایی خواهد بود که اصلا جالب نیست !!
Forwarded from آموزش برنامه نویسی - از مبتدی تا حرفه ای
2- زمانی که نمونه ای با اندازه ی n تقریبا به n نمونه ی با اندازه ی n/k تقسیم بشه که k یک عدد ثابت هست .
در این جا هم پیچیدگی زمانی الگوریتم به صورت n^log n خواهد بود .
در این جا هم پیچیدگی زمانی الگوریتم به صورت n^log n خواهد بود .
Forwarded from آموزش برنامه نویسی - از مبتدی تا حرفه ای
خب دوستان عزیز ، برای این جلسه کافیه . در این جلسه به صورت کامل با نمادهای پیچیدگی زمانی الگوریتم ها آشنا شدیم ، یکی دو روش معمول در محاسبه ی پیچیدگی زمانی رو بیان کردیم و مقدمات روش تقسیم و حل رو گفتیم .
دوستان عزیز ..
همونطور که مشخص بود ، منبع آموزش بالا هم کانال زیر بود : 👇👇👇👇👇
همونطور که مشخص بود ، منبع آموزش بالا هم کانال زیر بود : 👇👇👇👇👇
سوال مسابقه ی شماره 5 رو تقدیم میکنیم که مربوط به تحلیل الگوریتم و ساختمان داده هست .. لطفا پاسخ صحیح رو به @SaeedZiadid ارسال کنید
سلام عرض می کنم خدمت همه ی شما عزیزان
خسته نباشید
امیدواریم حالتون خوب باشه
در خدمت شما هستیم با قسمت دهم عیدانه ی علوم کامپیوتری ..
با ما همراه باشید 🌹🌹
خسته نباشید
امیدواریم حالتون خوب باشه
در خدمت شما هستیم با قسمت دهم عیدانه ی علوم کامپیوتری ..
با ما همراه باشید 🌹🌹
Forwarded from GuilanCS | علوم کامپیوتر
سوال مسابقه ی شماره 5 رو تقدیم میکنیم که مربوط به تحلیل الگوریتم و ساختمان داده هست .. لطفا پاسخ صحیح رو به @SaeedZiadid ارسال کنید
در این قسمت قصد داریم زبان برنامه نویسی جاوااسکریپت رو معرفی کنیم :
جاوااسکریپت (به انگلیسی: JavaScript) زبان برنامهنویسی اسکریپت مبتنی بر اشیاء است که توسط NetScape تولید شدهاست. این زبان، یک زبان شیگرا است که بر اساس استاندارد ECMA-262 Edition 3 نوشته شدهاست.
علیرغم اشتباه عمومی، زبان جاوااسکریت با زبان جاوا ارتباطی ندارد، اگر چه ساختار این زبان به سی پلاس پلاس(++C) و جاوا شباهت دارد؛ که این امر برای یادگیری آسان در نظر گرفته شدهاست. از همین رو دستورهای متداول مانند if, for, try..catch ,"while" و... در این زبان هم یافت میگردند.
این زبان میتواند هم به صورت ساخت یافته و هم به صورت شی گرا مورد استفاده قرار گیرد. در این زبان اشیاء با اضافه شدن متدها و خصوصیات پویا به اشیاء خالی ساخته میشوند، بر خلاف جاوا. بعد از ساخته شدن یک شی به روش فوق، این شی میتواند به عنوان نمونهای برای ساخته شدن اشیاء مشابه مورد استفاده قرار گیرد.
به علت این قابلیت زبان جاوااسکریپت برای ساختن نمونه از سیستم مناسب میباشد.
کاربرد گسترده این زبان در سایتها و صفحات اینترنتی میباشد و به کمک این زبان میتوان به اشیاء داخل صفحات HTML دسترسی پیدا کرد و آنها را تغییر داد. به همین علت برای پویا نمایی در سمت کاربر، از این زبان استفاده میشود.
علیرغم اشتباه عمومی، زبان جاوااسکریت با زبان جاوا ارتباطی ندارد، اگر چه ساختار این زبان به سی پلاس پلاس(++C) و جاوا شباهت دارد؛ که این امر برای یادگیری آسان در نظر گرفته شدهاست. از همین رو دستورهای متداول مانند if, for, try..catch ,"while" و... در این زبان هم یافت میگردند.
این زبان میتواند هم به صورت ساخت یافته و هم به صورت شی گرا مورد استفاده قرار گیرد. در این زبان اشیاء با اضافه شدن متدها و خصوصیات پویا به اشیاء خالی ساخته میشوند، بر خلاف جاوا. بعد از ساخته شدن یک شی به روش فوق، این شی میتواند به عنوان نمونهای برای ساخته شدن اشیاء مشابه مورد استفاده قرار گیرد.
به علت این قابلیت زبان جاوااسکریپت برای ساختن نمونه از سیستم مناسب میباشد.
کاربرد گسترده این زبان در سایتها و صفحات اینترنتی میباشد و به کمک این زبان میتوان به اشیاء داخل صفحات HTML دسترسی پیدا کرد و آنها را تغییر داد. به همین علت برای پویا نمایی در سمت کاربر، از این زبان استفاده میشود.
جاوااسکریپت را در ابتدا شخصی به نام برندان ایچ در شرکت نتاسکیپ با نام Mocha طراحی نمود. این نام بعداً به LiveScript و نهایتاً به جاوااسکریپت تغییر یافت. این تغییر نام تقریباً با افزوده شدن پشتیبانی از جاوا در مرورگر وب Netscape Navigator همزمانی دارد. اولین نسخهٔ جاوااسکریپت در نسخه 2.0B3 این مرورگر در دسامبر ۱۹۹۵ معرفی و عرضه شد. این نام گذاری منجر به سردرگمیهای زیادی شده و این ابهام را ایجاد میکند که جاوااسکریپت با جاوا مرتبط است در حالی که این طور نیست. عدهٔ زیادی این کار را یک ترفند تجاری برای به دست آوردن بخشی از بازار جاوا که در آن موقع زبان جدید مطرح برای برنامهنویسی تحت وب بود میدانند.
به دلیل موفقیت عمدهٔ جاوااسکریپت در نقش زبان نویسهای سمت کاربر (client side scripting language) برای صفحات وب، مایکروسافت یک نسخه سازگار از این زبان را ایجاد کرد و به علت مشکلات حقوقی آن را جی اسکریپت نامید. این زبان در نسخه ۳٫۰ از مرورگر اینترنت اکسپلورر و در اوت ۱۹۹۶ داده شد. تفاوتهای این دو زبان به حدی جزیی است که اغلب جی اسکریپت و جاوااسکریپت به جای هم به کار میروند. هرچند که مایکروسافت در اینجا چند ده دلیل برای تفاوت جی اسکریپت با استاندارد ECMA مطرح میکند.
نتاسکیپ جاوااسکریپت را به سازمان Ecma International برای استاندارد سازی ارسال کردهاست و نتیجه نسخهٔ استاندارد شدهای به نام ECMA Script است.
جاوااسکریپت به یکی از زبانهای برنامهنویسی پر طرفدار در وب تبدیل شدهاست. هر چند ابتدا بسیاری از برنامه نویسان حرفهای زبان را کم ارزش تلقی میکردند چون مخاطبین آن نویسندگان صفحات وب و آماتورهای این چنینی بودند. ظهور ایجکس بار دیگر جاوااسکریپت را در معرض توجه قرار داد و برنامه نویسان حرفهای بیشتری را به خود جذب نمود. نتیجه ازدیاد فریمورک و کتابخانههای جامعی در این زمینه، بهبود شیوههای رایج برنامهنویسی در جاوااسکریپت و افزایش کاربرد جاوااسکریپت خارج از وب است.
به دلیل موفقیت عمدهٔ جاوااسکریپت در نقش زبان نویسهای سمت کاربر (client side scripting language) برای صفحات وب، مایکروسافت یک نسخه سازگار از این زبان را ایجاد کرد و به علت مشکلات حقوقی آن را جی اسکریپت نامید. این زبان در نسخه ۳٫۰ از مرورگر اینترنت اکسپلورر و در اوت ۱۹۹۶ داده شد. تفاوتهای این دو زبان به حدی جزیی است که اغلب جی اسکریپت و جاوااسکریپت به جای هم به کار میروند. هرچند که مایکروسافت در اینجا چند ده دلیل برای تفاوت جی اسکریپت با استاندارد ECMA مطرح میکند.
نتاسکیپ جاوااسکریپت را به سازمان Ecma International برای استاندارد سازی ارسال کردهاست و نتیجه نسخهٔ استاندارد شدهای به نام ECMA Script است.
جاوااسکریپت به یکی از زبانهای برنامهنویسی پر طرفدار در وب تبدیل شدهاست. هر چند ابتدا بسیاری از برنامه نویسان حرفهای زبان را کم ارزش تلقی میکردند چون مخاطبین آن نویسندگان صفحات وب و آماتورهای این چنینی بودند. ظهور ایجکس بار دیگر جاوااسکریپت را در معرض توجه قرار داد و برنامه نویسان حرفهای بیشتری را به خود جذب نمود. نتیجه ازدیاد فریمورک و کتابخانههای جامعی در این زمینه، بهبود شیوههای رایج برنامهنویسی در جاوااسکریپت و افزایش کاربرد جاوااسکریپت خارج از وب است.