با n عنصر متفاوت، چند درخت دودویی جستوجوي متفاوت به ارتفاع n-1 وجود دارد؟
Anonymous Quiz
13%
1
14%
n
34%
n!
40%
2^n-1
👍3
https://youtube.com/playlist?list=PLU87gAWG2qKhx8SHnIbQNf8LxvhdHNH4G&si=E3qdg9Ml4n2Dpvhc
آموزش برنامه نویسی پیشرفته(پایتون)
مدرس:دکتر مظفر بگ محمدی
دانشگاه ایلام
این آموزش به صورت رایگان و همراه با تمرین می باشد.
برای دوستانی که علاقه مند هستند به اشتراک بگذارید تشکر🙏
📣👨💻 @AlgorithmDesign_DataStructuer
آموزش برنامه نویسی پیشرفته(پایتون)
مدرس:دکتر مظفر بگ محمدی
دانشگاه ایلام
این آموزش به صورت رایگان و همراه با تمرین می باشد.
برای دوستانی که علاقه مند هستند به اشتراک بگذارید تشکر🙏
📣👨💻 @AlgorithmDesign_DataStructuer
👌5
فرض کنید n رشته ي متمایز از صفر و یک داریم، طول بزرگترین رشته k است. از درخـت تراي براي نگهداري این رشتهها استفاده شده است. ارتفاع درخت تـراي از چـه مرتبـه اي می باشد؟
This media is not supported in your browser
VIEW IN TELEGRAM
یکی از چیز های پایه در رابطه با آشنایی با شبکه های عصبی الگوریتم یادگیری پرسپتورن می باشد. این الگوریتم دو نوع کلاس مختلف داریم و میخواهیم آن ها را از هم جدا کنیم برای همین یه سری ورودی و وزن هایی را در آن قرار میدهیم و از یک تابع فعالیت آن ها رو عبور می دهیم. این الگوریتم بعد از یه سری مدتی یاد میگیرد و دو دو کلاس را از هم جدا می کند و میتوان آن مدلی که برای یادگیری این الگوریتم نوشتید آن را ذخیره کرده و برای ورودی ها جدید استفاده کنید که به راحتی بتواند تشخیص دهد که در کدام یک از کلاس ها قرار گیرد.
📣👨💻 @AlgorithmDesign_DataStructuer
📣👨💻 @AlgorithmDesign_DataStructuer
👍2
دنباله اعداد 1,3,5,7,9 را به ترتیب از سمت چپ به راست وارد پشته می کنیم , اگر تنها اعمال مجاز بر روی پشته عملیات pop , push باشد آنگاه کدام یک از خروجی های زیر از پشته امکان پذیر نیست؟(از سمت چپ به راست)
👍3
👍2🤔1
لیست پیوندی (List Link)
لیسـتهـا سـاختمان دادهای هسـتند که اندازه آنها بصورت پویا تغییر میکند . پیمایش در لیستهای پـیوندی بصـورت ترتیبـی (خطـی) اسـت. بنابراین برای حذف , اضافه یا جستجو باید لیست را از ابتدا بصـورت خطی پیمایش کرد. هر گره (node (در لیست پیوندی ساختاری با دو فیلد اصلی دارد. یکی فـیلد داده که میتواند از هر نوع دادهای باشد و دیگری فیلد آدرس که به محل عنصر بعدی در لیست پـیوندی اشـاره مـیکـند. در سـاختمان داده لیسـت پیوندی اعمال اصلی حذف داده از لیست , اضافه کـردن داده بـه لیست و جستجو در لیست انجام میشود . عنصر اول لیست پیوندی را هد (Head )یا هـدر (Header )لیسـت مـیگویـند و معمولاً این عنصر را برای سادگی پیمایش خالی نگه میدارند . برای افزودن داده جدید به لیست پیوندی 4 عمل اصلی انجام میگیرد:
1- تشکیل گره (node)جدید بر اساس اطلاعات جدید افزوده شدنی
2- بدست آوردن آدرس گرهای که باید قبل از گره جدید قرار گیرد (مثلاً گره p)
3- آدرس گره جدید که به محل اشارهگر p اشاره میکند.
4- آدرس گره p را به محل node new تغییر میدهیم.
📣👨💻 @AlgorithmDesign_DataStructuer
لیسـتهـا سـاختمان دادهای هسـتند که اندازه آنها بصورت پویا تغییر میکند . پیمایش در لیستهای پـیوندی بصـورت ترتیبـی (خطـی) اسـت. بنابراین برای حذف , اضافه یا جستجو باید لیست را از ابتدا بصـورت خطی پیمایش کرد. هر گره (node (در لیست پیوندی ساختاری با دو فیلد اصلی دارد. یکی فـیلد داده که میتواند از هر نوع دادهای باشد و دیگری فیلد آدرس که به محل عنصر بعدی در لیست پـیوندی اشـاره مـیکـند. در سـاختمان داده لیسـت پیوندی اعمال اصلی حذف داده از لیست , اضافه کـردن داده بـه لیست و جستجو در لیست انجام میشود . عنصر اول لیست پیوندی را هد (Head )یا هـدر (Header )لیسـت مـیگویـند و معمولاً این عنصر را برای سادگی پیمایش خالی نگه میدارند . برای افزودن داده جدید به لیست پیوندی 4 عمل اصلی انجام میگیرد:
1- تشکیل گره (node)جدید بر اساس اطلاعات جدید افزوده شدنی
2- بدست آوردن آدرس گرهای که باید قبل از گره جدید قرار گیرد (مثلاً گره p)
3- آدرس گره جدید که به محل اشارهگر p اشاره میکند.
4- آدرس گره p را به محل node new تغییر میدهیم.
📣👨💻 @AlgorithmDesign_DataStructuer
👍4
This media is not supported in your browser
VIEW IN TELEGRAM
multilayer perceptron neural network
حال به جای اینکه دو کلاس را از هم جدا کنیم میتوانیم چند کلاس مختلف درست کنیم و آن ها را از هم جدا کنیم ولی باید دقت کنید در اینجا جدا پذیری دیگر خطی نیست به صورت غیر خطی میتوان آن ها را از هم جدا کرد. همان طور که در شکل میبیند یه سری ورودی داریم آن ها را وارد یه سری لایه پنهان میکنیم که هر کدام میتوانند چندین نورون داشته باشند هر کدام از این خروجی های نورون روی آن ها یه تابع غیر خطی اعمال شده و بعد وارد نورون جدید شود. که میتوانیم چندین خروجی داشته باشیم. نکته ای که وجود دارد این لایه ها و تعداد نورون ها بستگی به سوالی دارد که به شما میدهند و شما بر اساس داده هایی که دارید لایه ها و نورون ها رو مشخص میکنید.
📣👨💻 @AlgorithmDesign_DataStructuer
حال به جای اینکه دو کلاس را از هم جدا کنیم میتوانیم چند کلاس مختلف درست کنیم و آن ها را از هم جدا کنیم ولی باید دقت کنید در اینجا جدا پذیری دیگر خطی نیست به صورت غیر خطی میتوان آن ها را از هم جدا کرد. همان طور که در شکل میبیند یه سری ورودی داریم آن ها را وارد یه سری لایه پنهان میکنیم که هر کدام میتوانند چندین نورون داشته باشند هر کدام از این خروجی های نورون روی آن ها یه تابع غیر خطی اعمال شده و بعد وارد نورون جدید شود. که میتوانیم چندین خروجی داشته باشیم. نکته ای که وجود دارد این لایه ها و تعداد نورون ها بستگی به سوالی دارد که به شما میدهند و شما بر اساس داده هایی که دارید لایه ها و نورون ها رو مشخص میکنید.
📣👨💻 @AlgorithmDesign_DataStructuer
کدام یک از روش های مرتب سازی زیر به طور معمول درجا (inplace) نیست؟
Forwarded from کیوپدیا | QuPedia
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2👍1😍1
ماتریس مجاورت:
ماتـریس مجاورتـی روشـی عمومی برای پیادهسازی گرافها است . در این روش از یک ماتریس n × n
برای نمایش گراف استفاده میکنیم که n تعداد گرههای گراف است.
در واقع زمانی که ما میخواهیم در برنامه نویسی نشان دهیم که کدام نودها با هم ارتباط دارند از این روش استفاده میکنیم البته این مانریس که در شکل میبینید ارتباط نود هایی را نشان میدهد که یک گام برداشتیم برای ارتباط های دیگر اگر ماتریس بالا را یک بار دیگر در خودش ضرب کنیم دو گام انور را نشان میدهد و به همین ترتیب.
📣👨💻 @AlgorithmDesign_DataStructuer
ماتـریس مجاورتـی روشـی عمومی برای پیادهسازی گرافها است . در این روش از یک ماتریس n × n
برای نمایش گراف استفاده میکنیم که n تعداد گرههای گراف است.
در واقع زمانی که ما میخواهیم در برنامه نویسی نشان دهیم که کدام نودها با هم ارتباط دارند از این روش استفاده میکنیم البته این مانریس که در شکل میبینید ارتباط نود هایی را نشان میدهد که یک گام برداشتیم برای ارتباط های دیگر اگر ماتریس بالا را یک بار دیگر در خودش ضرب کنیم دو گام انور را نشان میدهد و به همین ترتیب.
📣👨💻 @AlgorithmDesign_DataStructuer
👍2
اسکالر، بردار، ماتر یس و تانسورها:
• اسکالرها: اسکالرها مقادیر عدد ی تکی هستند که مقدار یا مقداریتی را نشان می دهند. آنها هیچ جهت یا جهت گیری ندارند، فقط یک مقدار دارند. مثالهایی از اسکالرها شامل دما، زمان و جرم هستند.
• بردارها: بردارها مقادیری هستند که هم مقدار و هم جهت را نشان می دهند. آنها به صورت آرایه هایی از اعداد نمایش داده میشوند، که هر عدد مربوط به یک جزء از بردار در یک بعد خاص است. بردارها به طور معمول برای نمایش مقادیر فیزیکی مانند سرعت و نیرو استفاده میشوند.
• ماتریس ها: ماتریس ها آرایه های مستطیلی از اعداد هستند که به صورت سطرها و ستون ها ترتیب داده شده اند. آنها برا ی نمایش مجموعه های داده ها یا تبدیالت استفاده میشوند. هر عنصر در یک ماتریس با استفاده از شاخص های سطر و ستون خود شناسایی می شود. ماتریس ها به طور گسترده ای در عملیاته ا و تبدیالت ریاضی مورد استفاده قرار می گیرند.
• تنسورها: تنسورها آرایه های چند بعدی هستند که بردارها و ماتریس ها را عمومی تر می کنند. آنها می توانند تعدادی بعد داشته باشند و هر عنصر در یک تنسور با استفاده از شاخص های خود در هر بعد شناسا یی می شود.تانسورها به طور گسترده ای در یادگیری عمیق مورد استفاده قرار م ی گی رند زیرا می توانندساختارها و داده های پیچیده را نمایش دهند.
📣👨💻 @AlgorithmDesign_DataStructuer
• اسکالرها: اسکالرها مقادیر عدد ی تکی هستند که مقدار یا مقداریتی را نشان می دهند. آنها هیچ جهت یا جهت گیری ندارند، فقط یک مقدار دارند. مثالهایی از اسکالرها شامل دما، زمان و جرم هستند.
• بردارها: بردارها مقادیری هستند که هم مقدار و هم جهت را نشان می دهند. آنها به صورت آرایه هایی از اعداد نمایش داده میشوند، که هر عدد مربوط به یک جزء از بردار در یک بعد خاص است. بردارها به طور معمول برای نمایش مقادیر فیزیکی مانند سرعت و نیرو استفاده میشوند.
• ماتریس ها: ماتریس ها آرایه های مستطیلی از اعداد هستند که به صورت سطرها و ستون ها ترتیب داده شده اند. آنها برا ی نمایش مجموعه های داده ها یا تبدیالت استفاده میشوند. هر عنصر در یک ماتریس با استفاده از شاخص های سطر و ستون خود شناسایی می شود. ماتریس ها به طور گسترده ای در عملیاته ا و تبدیالت ریاضی مورد استفاده قرار می گیرند.
• تنسورها: تنسورها آرایه های چند بعدی هستند که بردارها و ماتریس ها را عمومی تر می کنند. آنها می توانند تعدادی بعد داشته باشند و هر عنصر در یک تنسور با استفاده از شاخص های خود در هر بعد شناسا یی می شود.تانسورها به طور گسترده ای در یادگیری عمیق مورد استفاده قرار م ی گی رند زیرا می توانندساختارها و داده های پیچیده را نمایش دهند.
📣👨💻 @AlgorithmDesign_DataStructuer
مسائل جستجوی دودیی و حاصل جمع زیر مجموعه ها در رده کدام دسته از مسائل قرار دارند؟(از راست به چپ)
Anonymous Quiz
9%
N,N
51%
NP,P
22%
NP,NP
18%
P,P
امان از این اورفیت! 🤒
نمودار بالا، لاس مربوط به ترین و ولیدیشن یک مدل اورفیت شده هست. میخوایم تو این پست درمورد اورفیت صحبت کنیم...
❓اورفیت چیه؟
اگه مدل ما حین یادگیری، همزمان با کاهش لاس ترین، لاس ارزیابیش شروع به افزایش کنه، میگیم مدل اورفیت شده.
پس این شد:
کاهش لاس ترین، اما افزایش لاس ولیدیشن (ارزیابی)
❓سه روش جلوگیری از اورفیت چیه؟
1️⃣ رگولاریزیشن L1 و L2 (اضافه کردن یک قید وزن روی لاس مدل)
2️⃣ دراپاوت (خاموش کردن رندومی نورونهای یک لایه)
3️⃣ دیتا آگمنتیشن
تو پستهای بعدی درمورد این سه تا مورد جلوگیری از اورفیت توضیح میدیم.
📣👨💻 @AlgorithmDesign_DataStructuer
نمودار بالا، لاس مربوط به ترین و ولیدیشن یک مدل اورفیت شده هست. میخوایم تو این پست درمورد اورفیت صحبت کنیم...
❓اورفیت چیه؟
اگه مدل ما حین یادگیری، همزمان با کاهش لاس ترین، لاس ارزیابیش شروع به افزایش کنه، میگیم مدل اورفیت شده.
پس این شد:
کاهش لاس ترین، اما افزایش لاس ولیدیشن (ارزیابی)
❓سه روش جلوگیری از اورفیت چیه؟
1️⃣ رگولاریزیشن L1 و L2 (اضافه کردن یک قید وزن روی لاس مدل)
2️⃣ دراپاوت (خاموش کردن رندومی نورونهای یک لایه)
3️⃣ دیتا آگمنتیشن
تو پستهای بعدی درمورد این سه تا مورد جلوگیری از اورفیت توضیح میدیم.
📣👨💻 @AlgorithmDesign_DataStructuer