Algorithm design & data structure
6.69K subscribers
1.01K photos
144 videos
175 files
597 links
این کانال برای تمامی علاقه‌مندان به کامپیوتر، مخصوصاً حوزه ساختمان داده‌ها و الگوریتم‌ها، مفید می باشد. آشنایی با ریاضیات مقدماتی، برنامه‌نویسی مقدماتی و پیشرفته و همچنین شی‌گرایی می‌تواند در درک بهتر مفاهیم این درس کمک‌ کند.

👨‍💻Admin👉 @Se_mohamad
Download Telegram
🌟 هیپ فیبونانچی (Fibonacci Heap) چیست؟ 🌟

هیپ فیبونانچی یک ساختار داده‌ای پیشرفته برای پیاده‌سازی صف‌های اولویت‌دار است که توسط مایکل فردمن و رابرت تارجان معرفی شده است. این ساختار داده‌ای به دلیل کارایی بالا در برخی عملیات‌ها مانند کاهش کلید (decrease-key) و ادغام (merge) بسیار مورد توجه قرار گرفته است.

🔹 ویژگی‌ها:
- ساختار درختی غیر دودویی
- عملکرد سریع در ادغام و دسترسی به حداقل
- مناسب برای الگوریتم‌های گراف مانند دایکسترا و MST

🔹 عملیات‌ها:
- ایجاد هیپ خالی: O(1)
- درج یک عنصر: O(1)
- یافتن حداقل: O(1)
- استخراج حداقل: O(log n)
- کاهش کلید: O(1)
- حذف عنصر: O(log n)

این ساختار به ویژه در مسائلی که نیاز به ادغام مکرر و کاهش کلید دارند، بسیار کارآمد است. 🌳

#الگوریتم
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍3
🌐 ریاضیات در یادگیری عمیق! 🌐

اگر به دنبال یادگیری مفاهیم ریاضی برای درک بهتر یادگیری ماشین و یادگیری عمیق هستید، منبعی عالی برای شما داریم! 📚

📘 سایت Dive into Deep Learning 📘

در این سایت می‌توانید به منابع آموزشی جامعی دسترسی پیدا کنید که به شما کمک می‌کند تا مفاهیم پیچیده ریاضی مرتبط با یادگیری عمیق را به خوبی فرا بگیرید. از جبر خطی و حساب دیفرانسیل و انتگرال گرفته تا احتمالات و آمار، همه چیز به زبان ساده و با مثال‌های کاربردی توضیح داده شده است. 🧮🔍

💡 ویژگی‌های برجسته سایت:
1. منابع جامع و رایگان 🎁
2. مثال‌های کاربردی و پروژه‌های عملی 💼
3. بروزرسانی مداوم مطالب 🔄
4. پشتیبانی از زبان‌های مختلف 🌍

برای شروع یادگیری و بهره‌برداری از این منابع فوق‌العاده، به لینک زیر مراجعه کنید:
🔗 Dive into Deep Learning

بیایید با هم دنیای یادگیری عمیق را کشف کنیم! 🚀🧠

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍4
🔅 تفاوت بین الگوریتم UCS و *A🔅

الگوریتم‌های UCS (Uniform Cost Search) و A* (A-Star) هر دو برای پیدا کردن کوتاه‌ترین مسیر در گراف‌ها استفاده می‌شوند، اما تفاوت‌های کلیدی بین این دو وجود دارد:

1. مبنای جستجو:
الگوریتم UCS: فقط بر اساس هزینه‌ای که تاکنون برای رسیدن به یک گره صرف شده است g(n) جستجو می‌کند.

الگوریتم *A: علاوه بر هزینه تاکنون صرف شده (g(n، از تخمین هزینه باقی‌مانده تا هدف (h(n)) نیز استفاده می‌کند. تابع ارزیابی در *A به صورت f(n) = g(n) + h(n) تعریف می‌شود.


2. هیوریستیک
:
الگوریتم UCS: از هیچ هیوریستیکی استفاده نمی‌کند.
الگوریتم *A: از هیوریستیک (h(n) استفاده می‌کند تا مسیر را بهینه‌تر پیدا کند.

3. کارایی
:
الگوریتم UCS: ممکن است گره‌های بیشتری را بررسی کند.
الگوریتم*A: به دلیل استفاده از هیوریستیک، معمولاً سریع‌تر به هدف می‌رسد.

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍5👌1
data-structure.pdf
12.7 MB
📚 معرفی جزوه ساختمان داده از فرشید شرافکن 📚

سلام دوستان! 😃 اگر به دنبال یک منبع جامع و کامل برای یادگیری ساختمان داده هستید، جزوه‌ی فرشید شرافکن انتخابی عالی است. این جزوه به گونه‌ای تنظیم شده که به شما کمک می‌کند تا با مباحث مختلف ساختمان داده به صورت عمیق آشنا شوید و مفاهیم را به خوبی درک کنید.

🔍 ویژگی‌های برجسته جزوه:
- شرح دقیق مفاهیم: مفاهیم پیچیده به زبان ساده و قابل فهم توضیح داده شده‌اند.
- حل تست‌های کنکور: شامل نمونه تست‌های کنکور به همراه پاسخ‌های دقیق برای تمرین و ارزیابی توانمندی‌های شما.
- تمرینات عملی: تمرینات و مثال‌های متنوع برای تسلط بهتر بر مطالب.

این جزوه، منبعی بی‌نظیر برای دانشجویان و داوطلبان کنکور است که می‌خواهند با بهره‌گیری از مطالب کاربردی و تست‌های کنکوری، آمادگی خود را افزایش دهند. 🎓

امیدوارم این جزوه به شما در مسیر یادگیری کمک کند و موفقیت‌های بیشتری را برایتان به ارمغان آورد. 📈🌟

#الگوریتم
📣👨‍💻 @AlgorithmDesign_DataStructuer
🔥4👍2
This media is not supported in your browser
VIEW IN TELEGRAM
🚀 معرفی سایت ZZZ Code AI 🚀

سلام به همه! 🌟 امروز می‌خواهیم شما را با یک منبع بی‌نظیر برای توسعه‌دهندگان و علاقه‌مندان به هوش مصنوعی آشنا کنیم: ZZZ Code AI. 🧠💡

این سایت با هدف فراهم کردن ابزارها و منابع مفید برای یادگیری و پیاده‌سازی تکنیک‌های هوش مصنوعی و یادگیری ماشین طراحی شده است. از امکانات برجسته آن می‌توان به موارد زیر اشاره کرد:

🔹 دوره‌های آموزشی تخصصی: دوره‌های متنوع در زمینه‌های مختلف هوش مصنوعی، شامل یادگیری ماشین، یادگیری عمیق و پردازش زبان طبیعی.
🔹 منابع کد منبع: دسترسی به کدهای نمونه و پروژه‌های عملی برای یادگیری بهتر و سریع‌تر.
🔹 مقالات و راهنماها: مقالات علمی و راهنماهای کاربردی برای به‌روز بودن با آخرین پیشرفت‌های این حوزه.

اگر به دنبال ارتقاء مهارت‌های خود در دنیای هوش مصنوعی و یادگیری ماشین هستید، ZZZ Code AI می‌تواند بهترین شریک آموزشی شما باشد. 🌐🚀

برای جزئیات بیشتر و شروع یادگیری، حتماً سری به این سایت بزنید! 🎓🔍

🔗 ZZZ Code AI

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍2👏2
📚🔢
📌 مقایسه دو روش محاسبه دنباله فیبوناچی: بازگشتی و پویا

🔄 روش بازگشتی:
- سادگی پیاده‌سازی 😊
- بهره‌وری پایین 🚫
- زمان اجرا: O(2^n)

🚀 روش پویا:
- بهره‌وری بالا 💪
- زمان اجرا: O(n) ⚡️
- فضای ذخیره‌سازی کمتر 🗂

📌 نتیجه‌گیری:
اگرچه روش بازگشتی ساده است، اما روش پویا به‌مراتب سریع‌تر و کارآمدتر است. برای محاسبات بزرگ‌تر، حتماً از روش پویا استفاده کنید!

🔢📚
#الگوریتم
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍3
💡 همه چیز درباره Dropout در یادگیری عمیق 💡

در دنیای یادگیری عمیق، Dropout یکی از تکنیک‌های محبوب و پرکاربرد است که به منظور بهبود عملکرد مدل‌های یادگیری و جلوگیری از بیش‌برازش (Overfitting) مورد استفاده قرار می‌گیرد.

در واقع Dropout یک روش منظم‌سازی (Regularization) است که توسط Geoffrey Hinton و همکارانش در سال 2012 معرفی شده است. در این روش، در هر مرحله از آموزش، به صورت تصادفی تعدادی از نورون‌ها غیرفعال (drop) می‌شوند. این بدین معناست که در هر تکرار (Iteration) از فرآیند آموزش، یک زیرمجموعه از نورون‌ها در شبکه عصبی به طور موقت حذف می‌شوند.

📈 مزایای Dropout
1. جلوگیری از بیش‌برازش (Overfitting): با غیرفعال کردن تصادفی نورون‌ها، مدل نمی‌تواند وابستگی شدیدی به نورون‌های خاصی پیدا کند، و این باعث افزایش قابلیت تعمیم مدل می‌شود.
2. افزایش کارآیی مدل: با تنوع‌سازی شبکه عصبی در طول فرآیند آموزش، مدل نهایی از ترکیب‌های مختلف نورون‌ها استفاده می‌کند که به بهبود کارایی آن می‌انجامد.
3. سادگی و کارآمدی: پیاده‌سازی Dropout ساده است و تنها با افزودن یک لایه Dropout به مدل، می‌توان از مزایای آن بهره‌مند شد.

🔧 نحوه پیاده‌سازی Dropout
برای استفاده از Dropout، کافی است در ساختار شبکه عصبی، یک لایه Dropout اضافه کنید. به عنوان مثال در کتابخانه Keras:

from keras.layers import Dropout

model.add(Dropout(0.5))

عدد 0.5 نشان‌دهنده احتمال غیرفعال شدن هر نورون است (50%).

🧩 نکات کلیدی در استفاده از Dropout
- مقدار بهینه Dropout: مقدار Dropout بهینه بستگی به داده‌ها و ساختار شبکه عصبی دارد، ولی معمولاً مقادیر بین 0.2 تا 0.5 استفاده می‌شود.
- استفاده در لایه‌های مختلف: Dropout معمولاً در لایه‌های مخفی شبکه عصبی استفاده می‌شود و کمتر در لایه‌های ورودی و خروجی به کار می‌رود.
- تاثیر بر زمان آموزش: استفاده از Dropout ممکن است زمان آموزش را افزایش دهد، اما بهبود عملکرد مدل در بلندمدت این هزینه را جبران می‌کند.

🎓 نتیجه‌گیری
Dropout یکی از تکنیک‌های مؤثر در بهبود عملکرد و افزایش قابلیت تعمیم مدل‌های یادگیری عمیق است. با استفاده هوشمندانه از این روش، می‌توان از بیش‌برازش جلوگیری کرد و مدل‌هایی دقیق‌تر و کارآمدتر ساخت.

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍1
🧮 الگوریتم KMP (Knuth-Morris-Pratt)

الگوریتم KMP یک روش کارآمد برای جستجوی یک الگو (Pattern) در یک متن (Text) است. این الگوریتم از اطلاعات قبلی برای تسریع جستجو استفاده می‌کند.

مراحل الگوریتم KMP

1. پیش‌پردازش الگو (Pattern)
- ایجاد آرایه LPS (Longest Prefix Suffix) که نشان می‌دهد هر پیشوند الگو تا چه حد می‌تواند به عنوان پسوند هم باشد.
- این آرایه به جلوگیری از تطابق‌های تکراری کمک می‌کند.
- زمان این مرحله O(m) است که در آن ( m) طول الگو است.
- 📊

2. جستجو در متن (Text)
- با استفاده از آرایه LPS، الگو در متن جستجو می‌شود.
- زمان این مرحله O(n) است که در آن ( n ) طول متن است.
- 🔍

نتیجه‌گیری

الگوریتم KMP با استفاده از آرایه LPS، جستجوی الگو را بهینه کرده و از بازگشت‌های غیرضروری جلوگیری می‌کند. این الگوریتم در زمان خطی O(n) عمل می‌کند و در مقایسه با روش‌های ساده‌تر مانند جستجوی مستقیم، بسیار کارآمدتر است.🚀

#الگوریتم
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍2
grokking-deep-learning.pdf
13.6 MB
📚🤖📘
📌 اگر به دنیای یادگیری عمیق علاقه‌مندید و به دنبال یک منبع آموزشی ساده و کاربردی می‌گردید، کتاب "Grokking Deep Learning" نوشته اندرو ترسک را از دست ندهید!
این کتاب با مثال‌های عملی و توضیحات گام به گام، شما را از مفاهیم پایه تا مباحث پیشرفته یادگیری عمیق همراهی می‌کند. ویژگی‌های برجسته این کتاب:
- 🔹 توضیحات واضح و ساده
- 🔹 مثال‌های کاربردی و کدهای عملی
- 🔹 پوشش جامع مباحث پایه‌ای و پیشرفته یادگیری عمیق

📌 این کتاب برای دانشجویان، پژوهشگران و علاقه‌مندان به هوش مصنوعی و یادگیری ماشین بسیار مفید خواهد بود.

📘🤖📚

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍1
خط لوله یادگیری ماشین: از دریافت داده‌ها تا بازخورد مدل

🔍 یک خط لوله یادگیری ماشین شامل مراحل مختلفی از جمله دریافت و نسخه‌بندی داده‌ها، اعتبارسنجی، پیش‌پردازش، آموزش و تنظیم مدل، تحلیل و نسخه‌بندی مدل، استقرار و دریافت بازخورد است. با خودکارسازی این مراحل، می‌توان مدل‌ها را به‌صورت مداوم به‌روزرسانی کرد و عملکرد بهتری به دست آورد. حلقه‌های بازخورد و توجه به حریم خصوصی داده‌ها نیز نقش مهمی در موفقیت پروژه‌های یادگیری ماشین دارند.

👨‍💻🤖📊
#هوش_مصنوعی
@AlgorithmDesign_DataStructuer
👌3👍2
Deep-Learning-with-PyTorch.pdf
44.7 MB
📚🔥🐍
📌 اگر به دنبال یادگیری PyTorch، یکی از محبوب‌ترین کتابخانه‌های یادگیری عمیق در پایتون، هستید و به دنبال یک منبع آموزشی عالی می‌گردید، کتاب 📘 "Deep Learning with PyTorch" نوشته Eli Stevens, Luca Antiga, و Thomas Viehmann را از دست ندهید!
این کتاب با مثال‌های عملی و توضیحات گام به گام، شما را از مفاهیم پایه تا مباحث پیشرفته یادگیری عمیق با PyTorch همراهی می‌کند. ویژگی‌های برجسته این کتاب:
- 🔹 توضیحات روشن و ساده
- 🔹 مثال‌های کاربردی و کدهای عملی
- 🔹 پوشش جامع مباحث پایه‌ای و پیشرفته PyTorch

📌 این کتاب برای دانشجویان، پژوهشگران و علاقه‌مندان به هوش مصنوعی و یادگیری ماشین بسیار مفید خواهد بود.

📚🔥🐍
#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍1
📚🔄🔍
📌 روش بازگشت به عقب (Backtracking) یک تکنیک حل مسئله است که برای پیدا کردن دنباله‌ای از اشیا از یک مجموعه مشخص استفاده می‌شود، به طوری که تمامی معیارهای مورد نیاز در این دنباله رعایت شوند. این روش به ویژه در حل مسائلی که نیاز به جستجوی فضاهای بزرگ و پیچیده دارند، مانند مسئله‌های ترکیبیاتی، پازل‌ها، و مسائل مربوط به برنامه‌ریزی کاربرد دارد.

بازگشت به عقب با ساختن دنباله‌ها به صورت تدریجی و بررسی شرایط هر مرحله، از مسیرهایی که به جواب نمی‌رسند، عقب‌نشینی می‌کند تا به یک جواب صحیح برسد. در این روش:
- 🔹 هر مرحله به عنوان یک حالت تعریف می‌شود.
- 🔹 در هر حالت، انتخاب‌ها مورد بررسی قرار می‌گیرند.
- 🔹 اگر انتخابی منجر به شکست شود، الگوریتم به مرحله قبلی بازمی‌گردد و مسیر دیگری را امتحان می‌کند.

این روش به دلیل کارآمدی در جستجوی فضای حالت و جلوگیری از بررسی تمامی حالت‌ها، بسیار مؤثر و محبوب است.

📚🔄🔍
#الگوریتم
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍1
🚨 توجه توجه! 🚨

در این دوره جامع، شما به صورت کامل و مرحله به مرحله با ساختارهای داده و الگوریتم‌ها آشنا خواهید شد. با کار بر روی بیش از ۱۰۰ سوال مصاحبه‌ای پیرامون کدنویسی پایتون، مهارت‌های لازم برای موفقیت در آزمون‌های استخدامی شرکت‌های بزرگ فناوری را کسب خواهید کرد.

💡 آنچه یاد خواهید گرفت:

📚 یادگیری، پیاده‌سازی، و بکارگیری انواع مختلف ساختارهای داده

🔍 یادگیری، پیاده‌سازی، و بکارگیری انواع مختلف الگوریتم‌ها

🚀 مسیر تبدیل شدن به یک توسعه‌دهنده برتر با تسلط بر اصول علم کامپیوتر

🛠 یادگیری ملزومات ضروری برای غلبه بر سوالات مصاحبه‌ای دشوار و پیچیده

🏆 موفقیت در مصاحبه کدنویسی با کار بر روی بیش از ۱۰۰ سوال همراه با توضیحات

⌛️ پیچیدگی زمان و مکان در ساختارهای داده و الگوریتم‌ها

🔄 مفهوم بازگشت (Recursion)

📏 مفهوم Big O

👥 این دوره را با دوستان خود که قصد دارند در آزمون‌های استخدامی شرکت کنند و موفق شوند، به اشتراک بگذارید!

💰 قیمت دوره: ۲۴ هزار تومان

📥 برای دریافت دوره و شروع یادگیری، روی لینک زیر کلیک کنید:

⬅️ دریافت دوره ساختارهای داده و الگوریتم‌ها

#الگوریتم
📣👨‍💻 @AlgorithmDesign_DataStructuer
🔥3👍1🤔1
This media is not supported in your browser
VIEW IN TELEGRAM
📚 الگوریتم مرج سورت(Merge Sort): مرتب‌سازی با هنر تقسیم و غلبه

مرج سورت یکی از بهترین الگوریتم‌ها برای مرتب‌سازی لیست‌هاست. این الگوریتم با تقسیم لیست به زیرلیست‌های کوچکتر و ترکیب آن‌ها به صورت مرتب، به کارایی بالایی دست می‌یابد.

1. تقسیم: لیست را به دو نیمه تقسیم کنید.
2. مرتب‌سازی: هر نیمه را به صورت بازگشتی مرتب کنید.
3. ترکیب: دو نیمه مرتب‌شده را ترکیب کنید تا لیست نهایی مرتب شود.

این الگوریتم دارای پیچیدگی زمانی O(n log n) است که آن را برای مرتب‌سازی لیست‌های بزرگ بسیار مناسب می‌کند.


💡 نکته جذاب: مرج سورت به دلیل استفاده از روش تقسیم و غلبه، کارایی بسیار بالایی دارد و یکی از الگوریتم‌های پایدار مرتب‌سازی محسوب می‌شود.

#الگوریتم
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍3
This media is not supported in your browser
VIEW IN TELEGRAM
📊 رگرسیون خطی: یکی از بنیادی‌ترین ابزارهای تحلیل داده‌ها 📊

رگرسیون خطی یک تکنیک آماری است که برای مدل‌سازی و تحلیل روابط بین دو یا چند متغیر استفاده می‌شود. این روش به خصوص زمانی مفید است که بخواهیم تأثیر یک یا چند متغیر مستقل (مثل میزان تبلیغات) را بر یک متغیر وابسته (مثل فروش) بررسی کنیم.

📈 فرمول کلی رگرسیون خطی ساده به صورت زیر است:

Y=a+bX

🔹 Y: متغیر وابسته
🔹 X: متغیر مستقل
🔹 a: عرض از مبدأ (محل برخورد خط با محور Y)
🔹 b: شیب خط (میزان تغییر Y به ازای یک واحد تغییر در X)

چطور کار می‌کند؟
رگرسیون خطی تلاش می‌کند خطی را پیدا کند که بهترین تناسب را با داده‌های شما داشته باشد. این خط به نحوی قرار می‌گیرد که مجموع مربعات فاصله‌های عمودی نقاط داده از خط، حداقل شود. این روش به نام حداقل مربعات شناخته می‌شود.

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
👌3👍1
This media is not supported in your browser
VIEW IN TELEGRAM
تشخیص اشیاء چگونه کار می‌کند؟ 🤖📸

تشخیص اشیاء فناوری‌ای است که به سیستم‌ها این امکان را می‌دهد تا اشیاء را در تصاویر یا ویدیوها شناسایی کنند.

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍2
This media is not supported in your browser
VIEW IN TELEGRAM
📜 دموی اضافه کردن عدد به لیست پیوندی دو طرفه

#الگوریتم
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍2
This media is not supported in your browser
VIEW IN TELEGRAM
کاوش در دنیای کانولوشن و الگوهای تصویری

آیا تا به حال فکر کرده‌اید که کانولوشن در پردازش تصویر چگونه کار می‌کند؟ 🤔

کانولوشن، با استفاده از فیلترهای خاص، به ما کمک می‌کند تا الگوهای خاصی را در تصاویر شناسایی کنیم. فیلترها، که در واقع ماتریس‌هایی از اعداد هستند، نقش بسیار مهمی در استخراج ویژگی‌های تصویر دارند.

به شکل فیلم دقت کنید: 📉
در یک سیگنال یک بعدی، نواحی مشابه با فیلتر به‌وضوح در خروجی آشکار می‌شوند. هر جا که دو مربع با هم همپوشانی دارند، مقدار پیک بالایی در خروجی مشاهده می‌شود. این نشان‌دهنده شباهت بالا در آن نقطه است و به ما این امکان را می‌دهد که الگوهای خاص را شناسایی کنیم. در واقع نمونه‌ای از یافتن الگوی مشابه در کانولوشن می باشد.

کانولوشن به ما کمک می‌کند تا الگوها و ویژگی‌های جالب را در تصاویر پیدا کنیم و این همان چیزی است که باعث می‌شود تصاویر به راحتی تجزیه و تحلیل شوند. 🎨🔍

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍4
🌟 آشنایی با الگوریتم Naïve Bayes 🌟

آیا تا به حال در مورد الگوریتم Naïve Bayes شنیده‌اید؟ 🤔

این الگوریتم، یکی از ساده‌ترین و کارآمدترین روش‌های یادگیری ماشین است که بر اساس قضیه بیز و فرض استقلال ویژگی‌ها عمل می‌کند. از این الگوریتم برای دسته‌بندی متن‌ها، فیلتر کردن ایمیل‌های اسپم و تشخیص احساسات استفاده می‌شود. 💡

چرا Naïve Bayes؟ 🤩
- سادگی و سرعت: پیاده‌سازی آسان و محاسبات سریع.
- کارایی بالا: حتی با داده‌های کم نیز عملکرد خوبی دارد.
- کاربرد وسیع: از فیلتر کردن ایمیل‌های اسپم گرفته تا تحلیل احساسات.

بیایید با هم از قدرت یادگیری ماشین و الگوریتم‌های هوشمند برای بهبود زندگی روزمره‌مان استفاده کنیم! 🌐

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍1