مثال ۹.۱: مقایسه دقیق لیست در برابر مجموعه (Lists vs Sets)
در لیستها «ترتیب» و «تکرار» تعیینکننده هویت شیء هستند، در حالی که در مجموعهها ترتیب عناصر کاملاً بیاثر بوده و تکرار عناصر نادیده گرفته میشود.
۱. صورت مثال کتاب آکسلر
- لیستهای و برابر نیستند، اما مجموعههای و با هم برابرند.
- لیستهای و برابر نیستند (چون طول یکسان ندارند؛ اولی طول ۲ و دومی طول ۳ دارد)، اگرچه مجموعههای و هر دو با مجموعه تکعضوی برابرند.
۲. جدول مقایسه بنیادین مفاهیم
برای آنکه این تمایز در ذهن شما برای همیشه شفاف بماند، به جدول زیر دقت کنید:
| ملاک ارزیابی | لیست (List / Tuple) | مجموعه (Set) |
|---|---|---|
| نمادگذاری | پرانتز: | آکولاد: |
| اهمیت ترتیب | حیاتی: | بیاهمیت: \{1, 2\} = \\{2, 1\} |
| اهمیت تکرار | حفظ میشود: | حذف میشود: \{1, 1\} = \\{1\} |
| مفهوم اندازه | دارای طول (Length) مشخص | دارای کاردینالیتی یا تعداد اعضا |
| کاربرد در جبر خطی | نمایش مختصات بردارها در | تعریف فضاهای برداری و زیرفضاها |
۳. تحلیل متناظر در علوم کامپیوتر
اگر با زبانهای برنامهنویسی مانند پایتون آشنایی دارید:
- لیست یا تاپل در پایتون:
[3, 5] != [5, 3]وlen([4, 4]) != len([4, 4, 4]) - ست در پایتون:
{3, 5} == {5, 3}و{4, 4} == {4, 4, 4} == {4}
این تقارن دقیقاً نشان میدهد چرا جبر خطی محاسباتی تمام بردارها را به صورت ساختارهای آرایهای/لیستی مدل میکند، نه ساختارهای مجموعهای.
۴. دامهای رایج امتحانی
۱. اشتباه در پرانتز و آکولاد: هرگز بردار را با آکولاد ننویسید! نوشتن یک مجموعه با حداکثر عضو را نشان میدهد و جهت یا مؤلفههای بردار را به کلی از بین میبرد. ۲. مساوی دانستن بردارها با مؤلفههای یکسان اما با طول متفاوت: بردار هرگز با برابر نیست؛ اگرچه در هر دو فقط عدد صفر تکرار شده است.
۵. ارتباطات و پیوندهای اتمیک
- مفهوم مبنا: تعریف ۸.۱: مفهوم لیست و طول آن
- تثبیت پارامتر طول: نماد ۱۰.۱: تثبیت طول n
- ورود به فضای برداری مختصاتی: تعریف ۱۱.۱: فضای Fn و مختصات