تالار گفتمان مانشت
ذخیره ماتریس پایین مثلثی / بالا مثلثی به شیوه سطری یا ستونی - نسخه‌ی قابل چاپ

ذخیره ماتریس پایین مثلثی / بالا مثلثی به شیوه سطری یا ستونی - shayesteNEY - 30 مهر ۱۳۹۳ ۰۴:۲۸ ب.ظ

سلام دوستان
یه سوال؟
ماتریس بالا مثلثی یا پایین مثلثی به دو شیوه سطری یا ستونی میشه ذخیره کرد.؟ ایا؟
فرمولاش رو کسی میدونه؟Blush در هر ۴ حال(۱= بالا مثلی سطری و ۲= بالا مثلثی ستونی و ۳= پایین مثلثی سطری و۴= بالامثلثی ستونی)

اینقد فرمول دیدم گیج شدمHuh
ممنونم از همگی

RE: ذخیره ماتریس پایین مثلثی / بالا مثلثی به شیوه سطری یا ستونی - nazanin_sh - 30 مهر ۱۳۹۳ ۰۵:۴۶ ب.ظ

سلام بله به هر دو روش سطری و ستونی ذخیره میشه.
نیاز به حفظ کردن فرمول نیست دوست عزیز. خودتون میتونید به دست بیارید. به روابطی که میتونید برقرار کنید فکر کنید. مثلا برای ماتریس بالا مثلثی m*n که به روش سطری ذخیره میشه، از سطر اول m عنصر ذخیره میشه ، از سطر دوم m_1 عنصر و ... تا جایی که به سطر مورد نظرمون میرسیم. در هر سطرم میتونیم با رابطه j - I + 1 بفهمیم که عنصرمون چندمین عنصره غیره صفره . همه اینارو با هم جمع کنیم عدد مورد نظر بدست میاد.
باقیشونم با یه سری روابط از این دست به دست میان. حالا اگه مایل بودین فرمول های کتابی رو هم براتون مینویسم .

RE: ذخیره ماتریس پایین مثلثی / بالا مثلثی به شیوه سطری یا ستونی - shayesteNEY - 07 آبان ۱۳۹۳ ۱۰:۰۴ ق.ظ

(۳۰ مهر ۱۳۹۳ ۰۵:۴۶ ب.ظ)nazanin_sh نوشته شده توسط:  سلام بله به هر دو روش سطری و ستونی ذخیره میشه.
نیاز به حفظ کردن فرمول نیست دوست عزیز. خودتون میتونید به دست بیارید. به روابطی که میتونید برقرار کنید فکر کنید. مثلا برای ماتریس بالا مثلثی m*n که به روش سطری ذخیره میشه، از سطر اول m عنصر ذخیره میشه ، از سطر دوم m_1 عنصر و ... تا جایی که به سطر مورد نظرمون میرسیم. در هر سطرم میتونیم با رابطه j - I + 1 بفهمیم که عنصرمون چندمین عنصره غیره صفره . همه اینارو با هم جمع کنیم عدد مورد نظر بدست میاد.
باقیشونم با یه سری روابط از این دست به دست میان. حالا اگه مایل بودین فرمول های کتابی رو هم براتون مینویسم .

ممنونم دوست عزیز بابت توضیحاتت. ممنون میشم اگه فرمول هر چهار حالت رو برام بزاری HeartHeartHeartHeart

RE: ذخیره ماتریس پایین مثلثی / بالا مثلثی به شیوه سطری یا ستونی - farahnaz - 07 آبان ۱۳۹۳ ۰۷:۵۱ ب.ظ

بهترین روش ذخیره یک ماتریس پایین مثلثی تبدیل ماتریس به یک آرایه یک بعدی است به طوری که عناصر غیرصفر ماتریس سطربه سطر در آرایه یه بعدی ذخیره شود.
اگرماتریس بالا مثلثی را در آرایه یک بعدی به صورت ستون به ستون ذخیره کنیم آن گاه برای یافتن مکان عنصر A_ij از فرمول [tex]\frac{(j-1)\cdot j}{2} i\: [/tex] برای ماتریس پاییین مثلثی به صورت سطر به سطر هم [tex]\frac{(i-1)\cdot i}{2} j[/tex] از این فرمول استفاده می کنیم .
برای ماتریس بالا مثلثی به روش ذخیره سازی سطری از فرمول [tex](i-1)(n-\frac{i}{2}) j[/tex] و برای ماتریس پایین مثلثی به روش ستونی از فرمول [tex](j-1)(n-\frac{j}{2}) i[/tex]

RE: ذخیره ماتریس پایین مثلثی / بالا مثلثی به شیوه سطری یا ستونی - nazanin_sh - 08 آبان ۱۳۹۳ ۰۵:۵۳ ب.ظ

ببخشید من دیر جواب دادم دیگه دوستمون زحمتشو کشیدن
موفق باشید

RE: ذخیره ماتریس پایین مثلثی / بالا مثلثی به شیوه ... - Negiiin - 22 مهر ۱۳۹۹ ۱۱:۲۸ ب.ظ

(۰۷ آبان ۱۳۹۳ ۰۷:۵۱ ب.ظ)farahnaz نوشته شده توسط:  بهترین روش ذخیره یک ماتریس پایین مثلثی تبدیل ماتریس به یک آرایه یک بعدی است به طوری که عناصر غیرصفر ماتریس سطربه سطر در آرایه یه بعدی ذخیره شود.
اگرماتریس بالا مثلثی را در آرایه یک بعدی به صورت ستون به ستون ذخیره کنیم آن گاه برای یافتن مکان عنصر A_ij از فرمول [tex]\frac{(j-1)\cdot j}{2} i\: [/tex] برای ماتریس پاییین مثلثی به صورت سطر به سطر هم [tex]\frac{(i-1)\cdot i}{2} j[/tex] از این فرمول استفاده می کنیم .
برای ماتریس بالا مثلثی به روش ذخیره سازی سطری از فرمول [tex](i-1)(n-\frac{i}{2}) j[/tex] و برای ماتریس پایین مثلثی به روش ستونی از فرمول [tex](j-1)(n-\frac{j}{2}) i[/tex]

(۰۷ آبان ۱۳۹۳ ۰۷:۵۱ ب.ظ)farahnaz نوشته شده توسط:  بهترین روش ذخیره یک ماتریس پایین مثلثی تبدیل ماتریس به یک آرایه یک بعدی است به طوری که عناصر غیرصفر ماتریس سطربه سطر در آرایه یه بعدی ذخیره شود.
اگرماتریس بالا مثلثی را در آرایه یک بعدی به صورت ستون به ستون ذخیره کنیم آن گاه برای یافتن مکان عنصر A_ij از فرمول [tex]\frac{(j-1)\cdot j}{2} i\: [/tex] برای ماتریس پاییین مثلثی به صورت سطر به سطر هم [tex]\frac{(i-1)\cdot i}{2} j[/tex] از این فرمول استفاده می کنیم .
برای ماتریس بالا مثلثی به روش ذخیره سازی سطری از فرمول [tex](i-1)(n-\frac{i}{2}) j[/tex] و برای ماتریس پایین مثلثی به روش ستونی از فرمول [tex](j-1)(n-\frac{j}{2}) i[/tex]



مطمئن هستید که این فرمول ها درست هستند؟
چون که من برای ماتریس بالامثلثی و به صورت سطری هرکار کردم این فرمول جور درست در نیامد