🌀برای پیادهسازی راحت و سریع سیستمهای RAG که در موردش صحبت کردیم، پیشنهاد میکنم حتماً نگاهی به کتابخونهٔ LangChain بندازید.
☑️ LangChain یک فریمورک قدرتمند پایتون هستش که توسعه اپلیکیشنهای مبتنی بر LLM، به خصوص RAG رو خیلی سادهتر و منظمتر میکنه و کلی ابزار مفید برای این کار در اختیارتون میذاره.
https://python.langchain.com/docs/introduction/
#معرفی #هوش_مصنوعی
~> @PinkOrca | آزاد بیندیشیم 🎲
☑️ LangChain یک فریمورک قدرتمند پایتون هستش که توسعه اپلیکیشنهای مبتنی بر LLM، به خصوص RAG رو خیلی سادهتر و منظمتر میکنه و کلی ابزار مفید برای این کار در اختیارتون میذاره.
https://python.langchain.com/docs/introduction/
#معرفی #هوش_مصنوعی
~> @PinkOrca | آزاد بیندیشیم 🎲
🔥11❤3👍1
🌱 بیومیمتیک: رد پای طبیعت در تکنولوژیهای انسانی
✨ تو این پست دو قسمتی، اول با چند نمونه الهامبخش از طبیعت در تکنولوژی آشنا میشیم و بعد به سراغ الگوریتمهایی میریم که با همین نگاه طبیعتمحور طراحی شدن. امیدوارم لذت ببرید! ⬇️
#نوشته #فکت #معرفی #علوم_کامپیوتر #بیومیمتیک #الگوریتم #طبیعت #نوآوری
~> @PinkOrca | آزاد بیندیشیم 🌵
✨ تو این پست دو قسمتی، اول با چند نمونه الهامبخش از طبیعت در تکنولوژی آشنا میشیم و بعد به سراغ الگوریتمهایی میریم که با همین نگاه طبیعتمحور طراحی شدن. امیدوارم لذت ببرید! ⬇️
#نوشته #فکت #معرفی #علوم_کامپیوتر #بیومیمتیک #الگوریتم #طبیعت #نوآوری
~> @PinkOrca | آزاد بیندیشیم 🌵
❤8👍2⚡1
🌱 طبیعت طی میلیاردها سال تکامل، راهحلهای بهینهای برای چالشهای مختلف پیدا کرده. بیومیمتیک (Biomimetics) یا تقلید از طبیعت، علمی هستش که این راهحلها رو مطالعه میکنه و در طراحی تکنولوژیهای جدید به کار میگیره.
🪶 یکی از معروفترین نمونهها، طراحی قطارهای شینکانسن ژاپنی هستش. مهندسان متوجه شدن وقتی قطار با سرعت بالا از تونل خارج میشه، صدای بلندی تولید میکنه. Eiji Nakatsu، مهندس ارشد پروژه که پرندهنگار هم بود، از شکل منقار پرنده kingfisher الهام گرفت. این پرنده میتونه بدون ایجاد موج زیادی از هوا وارد آب بشه. نوک قطار رو شبیه منقار این پرنده طراحی کردن و نه تنها مشکل صدا حل شد، بلکه مصرف انرژی ۱۰ درصد کاهش پیدا کرد.
🐶 در حوزه مواد، جورج دو مستراس در سال ۱۹۴۱ از خارهای گیاه burdock که به لباس سگش چسبیده بود، ایده velcro رو گرفت. زیر میکروسکوپ دید که این خارها قلابهای کوچکی دارن که به الیاف پارچه گیر میکنن. این کشف منجر به تولید چسبپارچهای (احتمالا همچین چیزی میگن بهش؟) شد که امروز در صنایع مختلف از پزشکی تا هوافضا کاربرد داره.
🪷 برگ لوتوس یکی دیگه از الهامبخشهای مهم در نانوتکنولوژی هستش. سطح این برگها ساختار میکروسکوپی خاصی داره که باعث میشه آب به شکل قطرههای کروی روش بغلته و آلودگیها رو با خودش ببره. این پدیده که "اثر لوتوس" نامیده میشه، در تولید رنگهای خودتمیزشونده و پوششهای ضدآب استفاده میشه. شرکت Lotusan اولین رنگ تجاری با این تکنولوژی رو در سال ۱۹۹۹ عرضه کرد.
🛒 در معماری، ترمیتها الهامبخش سیستمهای تهویه طبیعی شدن. لانههای ترمیت در آفریقا با وجود دمای بیرونی که بین ۳ تا ۴۲ درجه سانتیگراد تغییر میکنه، دمای داخلی ثابت ۳۱ درجه رو حفظ میکنن. مرکز خرید Eastgate در زیمبابوه با الهام از این سیستم طراحی شده و ۹۰ درصد انرژی کمتری نسبت به ساختمانهای مشابه مصرف میکنه.
🏊 صنایع مختلف دیگهای هم از طبیعت درسهای زیادی گرفتن. مثلا بالهای جغد دارای ساختار خاصی هستن که صدای پرواز رو کاهش میدن. این ویژگی در طراحی پرههای توربین بادی استفاده شده تا آلودگی صوتی کمتری تولید کنن. همچنین پوست کوسه که دارای دندونههای ریز هستش، الهامبخش طراحی سطوحی شده که مقاومت هیدرودینامیکی رو کاهش میدن. Speedo در سال ۲۰۰۸ لباس شنای Fastskin رو با این تکنولوژی تولید کرد که رکوردهای زیادی رو در المپیک پکن شکست.
1/2
~> @PinkOrca
🪶 یکی از معروفترین نمونهها، طراحی قطارهای شینکانسن ژاپنی هستش. مهندسان متوجه شدن وقتی قطار با سرعت بالا از تونل خارج میشه، صدای بلندی تولید میکنه. Eiji Nakatsu، مهندس ارشد پروژه که پرندهنگار هم بود، از شکل منقار پرنده kingfisher الهام گرفت. این پرنده میتونه بدون ایجاد موج زیادی از هوا وارد آب بشه. نوک قطار رو شبیه منقار این پرنده طراحی کردن و نه تنها مشکل صدا حل شد، بلکه مصرف انرژی ۱۰ درصد کاهش پیدا کرد.
🐶 در حوزه مواد، جورج دو مستراس در سال ۱۹۴۱ از خارهای گیاه burdock که به لباس سگش چسبیده بود، ایده velcro رو گرفت. زیر میکروسکوپ دید که این خارها قلابهای کوچکی دارن که به الیاف پارچه گیر میکنن. این کشف منجر به تولید چسبپارچهای (احتمالا همچین چیزی میگن بهش؟) شد که امروز در صنایع مختلف از پزشکی تا هوافضا کاربرد داره.
🪷 برگ لوتوس یکی دیگه از الهامبخشهای مهم در نانوتکنولوژی هستش. سطح این برگها ساختار میکروسکوپی خاصی داره که باعث میشه آب به شکل قطرههای کروی روش بغلته و آلودگیها رو با خودش ببره. این پدیده که "اثر لوتوس" نامیده میشه، در تولید رنگهای خودتمیزشونده و پوششهای ضدآب استفاده میشه. شرکت Lotusan اولین رنگ تجاری با این تکنولوژی رو در سال ۱۹۹۹ عرضه کرد.
🛒 در معماری، ترمیتها الهامبخش سیستمهای تهویه طبیعی شدن. لانههای ترمیت در آفریقا با وجود دمای بیرونی که بین ۳ تا ۴۲ درجه سانتیگراد تغییر میکنه، دمای داخلی ثابت ۳۱ درجه رو حفظ میکنن. مرکز خرید Eastgate در زیمبابوه با الهام از این سیستم طراحی شده و ۹۰ درصد انرژی کمتری نسبت به ساختمانهای مشابه مصرف میکنه.
🏊 صنایع مختلف دیگهای هم از طبیعت درسهای زیادی گرفتن. مثلا بالهای جغد دارای ساختار خاصی هستن که صدای پرواز رو کاهش میدن. این ویژگی در طراحی پرههای توربین بادی استفاده شده تا آلودگی صوتی کمتری تولید کنن. همچنین پوست کوسه که دارای دندونههای ریز هستش، الهامبخش طراحی سطوحی شده که مقاومت هیدرودینامیکی رو کاهش میدن. Speedo در سال ۲۰۰۸ لباس شنای Fastskin رو با این تکنولوژی تولید کرد که رکوردهای زیادی رو در المپیک پکن شکست.
1/2
~> @PinkOrca
❤10⚡2
🐿 الگوریتمهای الهامگرفته از طبیعت هم دستهای از روشهای محاسباتی هستن که از رفتار موجودات زنده و فرآیندهای طبیعی برای حل مسائل پیچیده استفاده میکنن. این الگوریتمها بخشی از حوزه هوش محاسباتی محسوب میشن و در دهههای اخیر توجه زیادی رو به خودشون جلب کردن.
🧬 یکی از معروفترین این الگوریتمها، الگوریتم ژنتیک هستش که John Holland در سال 1975 معرفی کرد. این الگوریتم از فرآیند فرگشت داروینی الهام میگیره و با استفاده از عملگرهایی مثل جهش (mutation)، ترکیب (crossover) و انتخاب (selection) به دنبال بهینهسازی جوابها میگرده. در هر نسل، کروموزومهایی که fitness بهتری دارن شانس بیشتری برای بقا و تولیدمثل پیدا میکنن.
🐦⬛️ الگوریتم بهینهسازی ازدحام ذرات (PSO) که Kennedy و Eberhart در 1995 ارائه دادن، از رفتار دستهجمعی پرندگان الهام گرفته. هر ذره در فضای جستجو حرکت میکنه و سرعتش بر اساس بهترین موقعیتی که خودش پیدا کرده (pbest) و بهترین موقعیتی که کل گروه پیدا کرده (gbest) آپدیت میشه. فرمول آپدیت سرعت به این شکله:
v(t+1) = w×v(t) + c1×r1×(pbest - x(t)) + c2×r2×(gbest - x(t))
که w ضریب اینرسی، c1 و c2 ضرایب یادگیری و r1 و r2 اعداد رندوم بین 0 و 1 هستن.
🐜 الگوریتم کلونی مورچهها (ACO) که Marco Dorigo در 1992 معرفی کرد، از نحوه پیدا کردن کوتاهترین مسیر توسط مورچهها استفاده میکنه. مورچهها با ترشح فرومون و دنبال کردن مسیرهایی که فرومون بیشتری دارن، به مرور زمان بهترین مسیر رو پیدا میکنن. این الگوریتم بهخصوص برای مسائل مسیریابی مثل TSP (مسئله فروشنده دورهگرد) کاربرد داره.
🐝 الگوریتمهای دیگهای هم وجود دارن مثل الگوریتم زنبور عسل (ABC) که Karaboga در 2005 معرفی کرد و از رفتار جستجوی غذای زنبورها الهام میگیره، یا الگوریتم خفاش که Xin-She Yang در 2010 ارائه داد و از سیستم اکولوکیشن خفاشها استفاده میکنه.
💥 نکته جالب اینه که این الگوریتمها معمولاً برای مسائل NP-hard که روشهای دقیق برای حلشون زمان نمایی نیاز دارن، کارایی خوبی نشون میدن. البته این الگوریتمها تضمینی برای پیدا کردن جواب بهینه سراسری ندارن ولی در عمل جوابهای قابل قبولی در زمان معقول ارائه میدن.
2/2
~> @PinkOrca
🧬 یکی از معروفترین این الگوریتمها، الگوریتم ژنتیک هستش که John Holland در سال 1975 معرفی کرد. این الگوریتم از فرآیند فرگشت داروینی الهام میگیره و با استفاده از عملگرهایی مثل جهش (mutation)، ترکیب (crossover) و انتخاب (selection) به دنبال بهینهسازی جوابها میگرده. در هر نسل، کروموزومهایی که fitness بهتری دارن شانس بیشتری برای بقا و تولیدمثل پیدا میکنن.
🐦⬛️ الگوریتم بهینهسازی ازدحام ذرات (PSO) که Kennedy و Eberhart در 1995 ارائه دادن، از رفتار دستهجمعی پرندگان الهام گرفته. هر ذره در فضای جستجو حرکت میکنه و سرعتش بر اساس بهترین موقعیتی که خودش پیدا کرده (pbest) و بهترین موقعیتی که کل گروه پیدا کرده (gbest) آپدیت میشه. فرمول آپدیت سرعت به این شکله:
v(t+1) = w×v(t) + c1×r1×(pbest - x(t)) + c2×r2×(gbest - x(t))
که w ضریب اینرسی، c1 و c2 ضرایب یادگیری و r1 و r2 اعداد رندوم بین 0 و 1 هستن.
🐜 الگوریتم کلونی مورچهها (ACO) که Marco Dorigo در 1992 معرفی کرد، از نحوه پیدا کردن کوتاهترین مسیر توسط مورچهها استفاده میکنه. مورچهها با ترشح فرومون و دنبال کردن مسیرهایی که فرومون بیشتری دارن، به مرور زمان بهترین مسیر رو پیدا میکنن. این الگوریتم بهخصوص برای مسائل مسیریابی مثل TSP (مسئله فروشنده دورهگرد) کاربرد داره.
🐝 الگوریتمهای دیگهای هم وجود دارن مثل الگوریتم زنبور عسل (ABC) که Karaboga در 2005 معرفی کرد و از رفتار جستجوی غذای زنبورها الهام میگیره، یا الگوریتم خفاش که Xin-She Yang در 2010 ارائه داد و از سیستم اکولوکیشن خفاشها استفاده میکنه.
💥 نکته جالب اینه که این الگوریتمها معمولاً برای مسائل NP-hard که روشهای دقیق برای حلشون زمان نمایی نیاز دارن، کارایی خوبی نشون میدن. البته این الگوریتمها تضمینی برای پیدا کردن جواب بهینه سراسری ندارن ولی در عمل جوابهای قابل قبولی در زمان معقول ارائه میدن.
2/2
~> @PinkOrca
❤15
Media is too big
VIEW IN TELEGRAM
گپی درمورد اینکه چطور با یه VM ویندوزی مشکل به شکل خیلی تمیزی حل میشه در مورد خیلی از نرمافزارها و اینکه برای کار با گنو/لینوکس نیازی به دوره دیدن نیست.
تماشای این ویدیو و شنیدنش به هرکسی توصیه نمیشه، چون یهویی تهیه شد و به بهترین شکل ممکن و مختصر و مفید نیست حرفا توش. همچنین بار علمی خاصی هم نداره. اما اگه مایل بودین گوش کنین.
#حرف_با_شما #ترفند
~> @PinkOrca | آزاد بیندیشیم 🕸
تماشای این ویدیو و شنیدنش به هرکسی توصیه نمیشه، چون یهویی تهیه شد و به بهترین شکل ممکن و مختصر و مفید نیست حرفا توش. همچنین بار علمی خاصی هم نداره. اما اگه مایل بودین گوش کنین.
#حرف_با_شما #ترفند
~> @PinkOrca | آزاد بیندیشیم 🕸
❤5👍2
~> Radix Sort
یکی از مهمترین الگوریتمهای مرتبسازی که تو چند تا پست بعدی در موردش بیشتر یاد میگیریم ⬇️
#نوشته #علوم_کامپیوتر #الگوریتم #برنامه_نویسی
~> @PinkOrca | آزاد بیندیشیم 🎈
یکی از مهمترین الگوریتمهای مرتبسازی که تو چند تا پست بعدی در موردش بیشتر یاد میگیریم ⬇️
#نوشته #علوم_کامپیوتر #الگوریتم #برنامه_نویسی
~> @PinkOrca | آزاد بیندیشیم 🎈
❤4👍2
الگوریتم Radix Sort یکی از الگوریتمهای مرتبسازی غیرمقایسهای هستش که برای مرتب کردن اعداد صحیح یا رشتهها استفاده میشه. برخلاف الگوریتمهایی مثل Quick Sort یا Merge Sort که عناصر رو با هم مقایسه میکنن، Radix Sort بر اساس رقمهای (digits) اعداد کار میکنه.
🔸 نحوه کارکرد
Radix Sort اعداد رو بر اساس رقمهاشون از کمارزشترین رقم (یکان) تا پرارزشترین رقم (بالاترین مرتبه) مرتب میکنه. این روش به LSD (Least Significant Digit) معروفه. البته میشه از MSD (Most Significant Digit) هم استفاده کرد که از پرارزشترین رقم شروع میکنه.
فرض کنید آرایهای با اعداد [170, 45, 75, 90, 2, 802, 24, 66] دارید:
مرحله اول - مرتبسازی بر اساس رقم یکان:
• گروه 0: 170, 90
• گروه 2: 2, 802
• گروه 4: 24
• گروه 5: 45, 75
• گروه 6: 66
نتیجه: [170, 90, 2, 802, 24, 45, 75, 66]
مرحله دوم - مرتبسازی بر اساس رقم دهگان:
• گروه 0: 2, 802
• گروه 2: 24
• گروه 4: 45
• گروه 6: 66
• گروه 7: 170, 75
• گروه 9: 90
نتیجه: [2, 802, 24, 45, 66, 170, 75, 90]
مرحله سوم - مرتبسازی بر اساس رقم صدگان:
• گروه 0: 2, 24, 45, 66, 75, 90
• گروه 1: 170
• گروه 8: 802
نتیجه نهایی: [2, 24, 45, 66, 75, 90, 170, 802]
🔸 استفاده از Counting Sort
برای مرتبسازی در هر مرحله، معمولاً از Counting Sort استفاده میشه. Counting Sort تعداد تکرار هر رقم رو میشماره و بر اساس اون، موقعیت نهایی هر عنصر رو تعیین میکنه. این ترکیب باعث میشه Radix Sort پایداری (stability) داشته باشه، یعنی ترتیب عناصر با مقدار یکسان حفظ میشه.
🔸 پیچیدگی زمانی و مکانی
پیچیدگی زمانی Radix Sort برابر با O(d × (n + k)) هستش که:
• d: تعداد رقمهای بزرگترین عدد
• n: تعداد عناصر آرایه
• k: محدوده مقادیر هر رقم (معمولاً 10 برای سیستم دهدهی)
اگه d ثابت در نظر گرفته بشه، پیچیدگی زمانی O(n) میشه که از الگوریتمهای مقایسهای با پیچیدگی O(n log n) بهتره.
پیچیدگی مکانی O(n + k) هستش که برای ذخیره آرایههای موقت در Counting Sort نیاز داریم.
🔸 محدودیتها و کاربردها
Radix Sort وقتی کارآمده که:
• با اعداد صحیح یا دادههایی که میشه به صورت رقمی نمایش داد کار میکنیم
• محدوده اعداد خیلی بزرگ نباشه
• تعداد رقمها نسبتاً کم باشه
این الگوریتم در پردازش کارتهای پانچ در دهه 1890 توسط Herman Hollerith برای سرشماری آمریکا استفاده شد. امروزه در دیتابیسها، سیستمهای توزیعشده و پردازش موازی کاربرد داره چون میشه هر مرحله رو به صورت مستقل پردازش کرد.
1/4
~> @PinkOrca 🎈
🔸 نحوه کارکرد
Radix Sort اعداد رو بر اساس رقمهاشون از کمارزشترین رقم (یکان) تا پرارزشترین رقم (بالاترین مرتبه) مرتب میکنه. این روش به LSD (Least Significant Digit) معروفه. البته میشه از MSD (Most Significant Digit) هم استفاده کرد که از پرارزشترین رقم شروع میکنه.
فرض کنید آرایهای با اعداد [170, 45, 75, 90, 2, 802, 24, 66] دارید:
مرحله اول - مرتبسازی بر اساس رقم یکان:
• گروه 0: 170, 90
• گروه 2: 2, 802
• گروه 4: 24
• گروه 5: 45, 75
• گروه 6: 66
نتیجه: [170, 90, 2, 802, 24, 45, 75, 66]
مرحله دوم - مرتبسازی بر اساس رقم دهگان:
• گروه 0: 2, 802
• گروه 2: 24
• گروه 4: 45
• گروه 6: 66
• گروه 7: 170, 75
• گروه 9: 90
نتیجه: [2, 802, 24, 45, 66, 170, 75, 90]
مرحله سوم - مرتبسازی بر اساس رقم صدگان:
• گروه 0: 2, 24, 45, 66, 75, 90
• گروه 1: 170
• گروه 8: 802
نتیجه نهایی: [2, 24, 45, 66, 75, 90, 170, 802]
🔸 استفاده از Counting Sort
برای مرتبسازی در هر مرحله، معمولاً از Counting Sort استفاده میشه. Counting Sort تعداد تکرار هر رقم رو میشماره و بر اساس اون، موقعیت نهایی هر عنصر رو تعیین میکنه. این ترکیب باعث میشه Radix Sort پایداری (stability) داشته باشه، یعنی ترتیب عناصر با مقدار یکسان حفظ میشه.
🔸 پیچیدگی زمانی و مکانی
پیچیدگی زمانی Radix Sort برابر با O(d × (n + k)) هستش که:
• d: تعداد رقمهای بزرگترین عدد
• n: تعداد عناصر آرایه
• k: محدوده مقادیر هر رقم (معمولاً 10 برای سیستم دهدهی)
اگه d ثابت در نظر گرفته بشه، پیچیدگی زمانی O(n) میشه که از الگوریتمهای مقایسهای با پیچیدگی O(n log n) بهتره.
پیچیدگی مکانی O(n + k) هستش که برای ذخیره آرایههای موقت در Counting Sort نیاز داریم.
🔸 محدودیتها و کاربردها
Radix Sort وقتی کارآمده که:
• با اعداد صحیح یا دادههایی که میشه به صورت رقمی نمایش داد کار میکنیم
• محدوده اعداد خیلی بزرگ نباشه
• تعداد رقمها نسبتاً کم باشه
این الگوریتم در پردازش کارتهای پانچ در دهه 1890 توسط Herman Hollerith برای سرشماری آمریکا استفاده شد. امروزه در دیتابیسها، سیستمهای توزیعشده و پردازش موازی کاربرد داره چون میشه هر مرحله رو به صورت مستقل پردازش کرد.
1/4
~> @PinkOrca 🎈
❤3👍1
❓آیا Radix Sort سریعترین الگوریتم مرتبسازیه؟
نه، Radix Sort بهترین الگوریتم مرتبسازی از نظر سرعت نیست. در واقع هیچ الگوریتمی به صورت مطلق "بهترین" نیست چون بستگی به شرایط و نوع دادهها داره.
🔹 مقایسه سرعت در شرایط مختلف:
برای اعداد صحیح با تعداد رقم کم:
• Radix Sort با O(n) عملکرد عالی داره
• از Quick Sort و Merge Sort با O(n log n) سریعتره
برای آرایههای کوچک (کمتر از 50 عنصر):
• Insertion Sort معمولاً سریعتره
• Radix Sort سربار (overhead) زیادی داره
برای دادههای عمومی و آرایههای بزرگ:
• Quick Sort معمولاً سریعترین گزینهست
• در حالت میانگین O(n log n) با ضریب ثابت کم
برای دادههای تقریباً مرتب:
• Timsort (ترکیب Merge و Insertion) بهترین عملکرد رو داره
• پایتون و جاوا از این الگوریتم استفاده میکنن
🔹 محدودیتهای Radix Sort:
• فقط برای اعداد صحیح یا دادههای قابل تبدیل به رقم کار میکنه
• برای اعداد اعشاری یا رشتههای پیچیده کارایی نداره
• اگه اعداد خیلی بزرگ باشن (مثلاً 64 بیتی)، تعداد مراحل زیاد میشه
• حافظه اضافی O(n+k) نیاز داره که برای دادههای بزرگ مشکلسازه
🔹 در عمل:
اکثر کتابخانههای استاندارد از ترکیبی از الگوریتمها استفاده میکنن:
• CPP از Introsort (ترکیب Quick، Heap و Insertion)
• Java از Dual-Pivot Quicksort برای primitive types
• Python از Timsort برای همه انواع داده
پس Radix Sort در شرایط خاص (اعداد صحیح با محدوده کم) خیلی سریعه، اما برای استفاده عمومی، Quick Sort و نسخههای بهینهشدهش معمولاً انتخاب بهتری هستن.
3/4
~> @PinkOrca 🎈
نه، Radix Sort بهترین الگوریتم مرتبسازی از نظر سرعت نیست. در واقع هیچ الگوریتمی به صورت مطلق "بهترین" نیست چون بستگی به شرایط و نوع دادهها داره.
🔹 مقایسه سرعت در شرایط مختلف:
برای اعداد صحیح با تعداد رقم کم:
• Radix Sort با O(n) عملکرد عالی داره
• از Quick Sort و Merge Sort با O(n log n) سریعتره
برای آرایههای کوچک (کمتر از 50 عنصر):
• Insertion Sort معمولاً سریعتره
• Radix Sort سربار (overhead) زیادی داره
برای دادههای عمومی و آرایههای بزرگ:
• Quick Sort معمولاً سریعترین گزینهست
• در حالت میانگین O(n log n) با ضریب ثابت کم
برای دادههای تقریباً مرتب:
• Timsort (ترکیب Merge و Insertion) بهترین عملکرد رو داره
• پایتون و جاوا از این الگوریتم استفاده میکنن
🔹 محدودیتهای Radix Sort:
• فقط برای اعداد صحیح یا دادههای قابل تبدیل به رقم کار میکنه
• برای اعداد اعشاری یا رشتههای پیچیده کارایی نداره
• اگه اعداد خیلی بزرگ باشن (مثلاً 64 بیتی)، تعداد مراحل زیاد میشه
• حافظه اضافی O(n+k) نیاز داره که برای دادههای بزرگ مشکلسازه
🔹 در عمل:
اکثر کتابخانههای استاندارد از ترکیبی از الگوریتمها استفاده میکنن:
• CPP از Introsort (ترکیب Quick، Heap و Insertion)
• Java از Dual-Pivot Quicksort برای primitive types
• Python از Timsort برای همه انواع داده
پس Radix Sort در شرایط خاص (اعداد صحیح با محدوده کم) خیلی سریعه، اما برای استفاده عمومی، Quick Sort و نسخههای بهینهشدهش معمولاً انتخاب بهتری هستن.
3/4
~> @PinkOrca 🎈
❤5👍1
This media is not supported in your browser
VIEW IN TELEGRAM
✔️ دیدنِ این ویدیو هم برای درک Radix Sort به سادهترین شکل میتونه مفید باشه.
🔗 منبع ویدیو
4/4
~> @PinkOrca 🎈
🔗 منبع ویدیو
4/4
~> @PinkOrca 🎈
❤3👍1
🚀 بررسی و استفاده رایگان از انواع LLMها مثل Claude، ChatGPT، Gemeni و... (همون lmsys.org سابق) ⬇️
https://lmarena.ai/?mode=direct
#معرفی #هوش_مصنوعی
~> @PinkOrca | آزاد بیندیشیم 🤖
https://lmarena.ai/?mode=direct
#معرفی #هوش_مصنوعی
~> @PinkOrca | آزاد بیندیشیم 🤖
❤5🔥2
❌ برای مطالعهٔ یه متن نسبتا طولانی دنبال یه ترکیب رنگی بودم که:
کنتراست مناسبی داشته باشه، چشم رو خسته نکنه، تیره باشه که نور آبی مضر کمتری وارد چشمم بشه و در عین حال رنگ متنش یکم گرم باشه که از سفید خالص راحتتر باشه... همینطور تو نور کم و زیاد کاربردی باشه و خلاصه این حرفا.
✅ به این ترکیب رسیدم و راضی بودم:
بکگراند:
متن:
گفتم به شما هم پیشنهاد کنم، ممکنه کاربردی باشه🫰
#معرفی #حرف_با_شما
~> @PinkOrca | آزاد بیندیشیم 📚
کنتراست مناسبی داشته باشه، چشم رو خسته نکنه، تیره باشه که نور آبی مضر کمتری وارد چشمم بشه و در عین حال رنگ متنش یکم گرم باشه که از سفید خالص راحتتر باشه... همینطور تو نور کم و زیاد کاربردی باشه و خلاصه این حرفا.
✅ به این ترکیب رسیدم و راضی بودم:
بکگراند:
#1e1e1e (خاکستری تیره نرم)متن:
#e8e6e3 (کرم روشن)گفتم به شما هم پیشنهاد کنم، ممکنه کاربردی باشه🫰
#معرفی #حرف_با_شما
~> @PinkOrca | آزاد بیندیشیم 📚
❤25👍2⚡1
🔫 موضوع حرفای امروزمون Partial Upgrade هستش، اشتباه رایج خیلی از کاربران Arch Linux و توزیعهای Arch-based دیگه که ساده اما خطرناکه.
🪚 و همچنین استفاده نادرست ما از ابزارها و در نتیجه خرابی اونا رو گردن بگیریم.
❌ pacman -Sy
✅ pacman -Syu
#لینوکس #حرف_با_شما
~> @PinkOrca | آزاد بیندیشیم 🔧
🪚 و همچنین استفاده نادرست ما از ابزارها و در نتیجه خرابی اونا رو گردن بگیریم.
❌ pacman -Sy
✅ pacman -Syu
#لینوکس #حرف_با_شما
~> @PinkOrca | آزاد بیندیشیم 🔧
❤3👍3🔥1
💥 به پیشنهاد دوستان یک روم ماتریکس رو wiiz.ir برای زمانی که مشکل اتصال برای اکثر مردم پیش میاد ایجاد کردم... برای ارتباط ضروری یا رد و بدل کردن چیزهای مورد نیاز.
در صورت تمایل بپیوندید:
https://matrix.to/#/#vandadcommunity:wiiz.ir
✅ ویژگیهای کلیش اینه که:
امنیتش بالاست، تو موقع اتصال به اینترانت مشکل دسترسی ندارید و کمتر از گروه تلگرامی توش حساسیت و قوانین داریم.
💢 تنها چیزی که نیاز دارید نصب یک کلاینت ماتریکس مثل Element و راهاندازی با wiiz هستش که سادست نیاز به آموزش نداره.
#معرفی
~> @PinkOrca | آزاد بیندیشیم 🪨
در صورت تمایل بپیوندید:
https://matrix.to/#/#vandadcommunity:wiiz.ir
✅ ویژگیهای کلیش اینه که:
امنیتش بالاست، تو موقع اتصال به اینترانت مشکل دسترسی ندارید و کمتر از گروه تلگرامی توش حساسیت و قوانین داریم.
💢 تنها چیزی که نیاز دارید نصب یک کلاینت ماتریکس مثل Element و راهاندازی با wiiz هستش که سادست نیاز به آموزش نداره.
#معرفی
~> @PinkOrca | آزاد بیندیشیم 🪨
❤8
This media is not supported in your browser
VIEW IN TELEGRAM
💢 با توجه به رشد نمایی AI و توسعه و گسترش توانمندیهاش در زمینههای مختلف مانند برنامهنویسی، باید به دنبال شغلهای مناسبی برای جایگزینی باشیم.
✅ تو این ویدیو که شاید بعضیاتون قبلا از کانال یکی از دوستانم دیدین، در مورد این موضوع صحبت کردم.
⚠️ پ.ن:
در شرایط کنونی کشور استفاده از این روش مجاز نمیباشد و این ویدیو صرفا جنبه آموزشی دارد.
#ترفند #حرف_با_شما #فان
~> @PinkOrca | آزاد بیندیشیم 🤍
✅ تو این ویدیو که شاید بعضیاتون قبلا از کانال یکی از دوستانم دیدین، در مورد این موضوع صحبت کردم.
⚠️ پ.ن:
در شرایط کنونی کشور استفاده از این روش مجاز نمیباشد و این ویدیو صرفا جنبه آموزشی دارد.
#ترفند #حرف_با_شما #فان
~> @PinkOrca | آزاد بیندیشیم 🤍
🤣27👍1😁1🤯1
💢 بخاطر حساسیتهای بالا فعلا هیچ کانفیگی رو به شکل مستقیم و پابلیک نمیذارم تو کانال و همینطور انجمن ونداد.
⁉️ چرا؟
مشخصه دیگه، چون سریعتر غیرفعال میشن.
❤️🩹 اما از اونجایی که اکثرمون برای کارای روزمره به اینترنت نیازمندیم، یه گروه خصوصی (و شاید موقت) ایجاد کردم که توش من و بقیه با اشتراکگذاری انواع کانفیگ و راههای اتصال به هم کمک میکنیم (چون کسی رو جز خودمون نداریم!)
✅ اگه خواستید عضو بشید / مشارکت کنید:
کافیه پیوی پیام بفرستید "کانفیگ" یا "VPN"
PV ~> @Pink0rca
📌 به امید پایان جنگ و برقراری آرامش تو ایران عزیزمون.
🎈 پ.ن:
~> @PinkOrca | آزاد بیندیشیم 🔑
آپدیت:
گروه به این تاپیک منتقل شد
https://news.1rj.ru/str/VandadCommunity/367282
⁉️ چرا؟
مشخصه دیگه، چون سریعتر غیرفعال میشن.
❤️🩹 اما از اونجایی که اکثرمون برای کارای روزمره به اینترنت نیازمندیم، یه گروه خصوصی (و شاید موقت) ایجاد کردم که توش من و بقیه با اشتراکگذاری انواع کانفیگ و راههای اتصال به هم کمک میکنیم (چون کسی رو جز خودمون نداریم!)
✅ اگه خواستید عضو بشید / مشارکت کنید:
کافیه پیوی پیام بفرستید "کانفیگ" یا "VPN"
PV ~> @Pink0rca
📌 به امید پایان جنگ و برقراری آرامش تو ایران عزیزمون.
🎈 پ.ن:
موضوع کانال من این نبود و نیست، اما از اونجایی که کمتر از ۳٪ مردم الان دسترسی به اینترنت دارن، فایدهای نداره پست عادی گذاشتن تا دوباره وضعیت اوکی بشه... پس یه کار بهتر میکنیم..!#کانفیگ #فیلتر_شکن #v2ray #حرف_با_شما
اگه عضو تازه هستید میتونید از [اینجا] به دستهبندی کانال و پستهای قدیمی دسترسی داشته باشید.
~> @PinkOrca | آزاد بیندیشیم 🔑
آپدیت:
گروه به این تاپیک منتقل شد
https://news.1rj.ru/str/VandadCommunity/367282
1❤21👎4🔥1
Pink Orca ✌️ پینک اورکا
💢 با توجه به رشد نمایی AI و توسعه و گسترش توانمندیهاش در زمینههای مختلف مانند برنامهنویسی، باید به دنبال شغلهای مناسبی برای جایگزینی باشیم. ✅ تو این ویدیو که شاید بعضیاتون قبلا از کانال یکی از دوستانم دیدین، در مورد این موضوع صحبت کردم. ⚠️ پ.ن: در شرایط…
This media is not supported in your browser
VIEW IN TELEGRAM
بچهها شرایط خیلی وخیم بود، حمله هوایی کرده بودن (کامل ببینین)😭
انگار نه انگار که همین چند وقت پیش به فکر آینده شغلیم بودم💔
#متفرقه
~> @PinkOrca | آزاد بیندیشیم 🤍
انگار نه انگار که همین چند وقت پیش به فکر آینده شغلیم بودم💔
#متفرقه
~> @PinkOrca | آزاد بیندیشیم 🤍
🤣31😁4🤬2😢2💔2👎1
🎩 یه ربات کاربردی برای دانلود APK تو تلگرام:
~> @apkdls_bot
🪖 این روزا به شدت کاربردیه.
- مرسی از آقا سجاد برای معرفی.
#معرفی #ترفند
~> @PinkOrca | آزاد بیندیشیم ✨
~> @apkdls_bot
🪖 این روزا به شدت کاربردیه.
- مرسی از آقا سجاد برای معرفی.
#معرفی #ترفند
~> @PinkOrca | آزاد بیندیشیم ✨
❤10