الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

حساب المساحة المستخدمة space complexity

بدأه light stars في 21 مايو 2011 · 3 رد · 561 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

مرحبا بالجميع

كيف حساب مساحة الذاكرة المستخدمة في خوارزمية معينة (space complexity)

مثال

int x;

char s;

int arr[3];

int =4

char =4

فيصبح المجموع

space complexity = 4+4+(4*3)=20

وسؤالي هل يوجد function جاهزة لحساب ذلك

تم تعديل هذه المشاركة بواسطة light stars في 21 مايو 2011 في 14:29

#2

السلام عليكم

كل المشكلة فقط استعمال الـ operator , وهي sizeof ولكنها مش function

وضم المجموع في متغير من نوع int بعبارة حسابية معينة

وهناك صيغة وقانون لحساب حجم المصفوفة وايضاً باستعمال sizeof

مثال لكيفية الإستعمال

int x;
int var = sizeof(x);

وهنا صيغة قانون حساب حجم المصفوفة بالذاكرة

sizeof(myArray) / sizeof(int)

لو كانت myArray هون مصفوفة من نوع int

آسفة الصيغة السابقة ربما تكون خطأ ولكن التأكد منها شغلة بسيطة

أجمل الإمنيات

تم تعديل هذه المشاركة بواسطة ♥ حُوريّة ♥ في 21 مايو 2011 في 15:46

[وسط]

♥ Countess ♥

57899411.gif

♥

[/وسط]

#3

من الصعب تحديد هذه المساحه لأن الكود الناتج بعد الترجمه سيختلف عن الذى قمت بكتابته حيث فى الأغلب سيقوم المترجم بإستخدام المسجلات للمتغيرات المحليه.

مدونتي: C++ Tips and Tricks

#4

أخت ♥ حُوريّة ♥

sizeof يقوم بنفس العمل الذي فعلتة

فهذه طريقة صعبة و طويلة (أخذ كل عنصر لوحدة وجمعة مع اﻷخر)

اﻷمر اﻷخر

اقتباس
وهنا صيغة قانون حساب حجم المصفوفة بالذاكرة

sizeof(myArray) / sizeof(int)

المفترض نضرب في 4 وليس نقسم على 4

تم تعديل هذه المشاركة بواسطة light stars في 23 مايو 2011 في 21:24

مواضيع مشابهة