زمان کنونی: ۰۶ آذر ۱۴۰۳, ۰۱:۴۳ ق.ظ مهمان گرامی به انجمن مانشت خوش آمدید. برای استفاده از تمامی امکانات انجمن می‌توانید عضو شوید.
گزینه‌های شما (ورودثبت نام)

ساختمان داده/مرتبه زمانی

ارسال:
  

*angle* پرسیده:

ساختمان داده/مرتبه زمانی

با سلام
مرتبه زمانی تکه برنامه زیر چیست

[tex]for(i=1;i\leq n ; i ) for(j=1;j\leq n; j =i) x=x 1;[/tex]

در پاسخش نوشته
[tex]n n\2 n/4 ... n/n[/tex]
ولی من اصلا نفهیمدم این دو خط چیکار می کنه سوال از صفحه ۶ ساختمان داده پوران پژوهش ورداشتم
ممنون میشم راهنماییم کنید(البته ۲ تا for زیر هم هستند من بد تایپ کردم و کلا ۳ خط زیر هم هستند)
مشاهده‌ی وب‌سایت کاربر
نقل قول این ارسال در یک پاسخ

۲
ارسال:
  

azad_ahmadi پاسخ داده:

RE: ساختمان داده/مرتبه زمانی

(۱۰ مهر ۱۳۹۱ ۰۳:۱۰ ب.ظ)*angle* نوشته شده توسط:  با سلام
مرتبه زمانی تکه برنامه زیر چیست

[tex]for(i=1;i\leq n ; i ) for(j=1;j\leq n; j =i) x=x 1;[/tex]

در پاسخش نوشته
[tex]n n\2 n/4 ... n/n[/tex]
ولی من اصلا نفهیمدم این دو خط چیکار می کنه سوال از صفحه ۶ ساختمان داده پوران پژوهش ورداشتم
ممنون میشم راهنماییم کنید(البته ۲ تا for زیر هم هستند من بد تایپ کردم و کلا ۳ خط زیر هم هستند)

سلام.
مثال میزنم:
به ازای i=1 هر بار مقدار گام J برابر ۱ می شه یا به عبارتی همون j++ . -------- پس به ازای i = 1 مقدار j تا n/2 میره.
به ازای i=2 هربار مقدار گام j به اضافه ۲ میشه یعنی ۱و۳و۵و۷و ... ---------- پس به ازای i = 2 مقدار j تا n/3 میره.
به ازای i=3 هربار مقدار گام j به اضافه ۳ میشه یعنی ۱و۴و۷و۱۰و ... ---------- پس به ازای i = 3 مقدار j تا n/4 میره.
...
و به همین صورت ادامه پیدا می کنه که مقدار j تا n/n بره. یعنی هربار با گام j یک واحد اضافه می شه و این باعث میشه که تعداد اجرای حلقه for تقسیم بر گام اجرا بشه.
واما در آخر n/2 + n/3 + n/4 + n/5 + ...+ n/n که اگه از n فاکتور بگیریم، میشه n* 1/2+1/3+1/4+...+1/n .
جواب اون تقسیم ها میشه logn و اگه اون n درش ضرب بشه میشه nlogn.
----------------------------------
درضمن اون جوابی که خودتون نوشتین مال سوال قبلیشه.Smile
نقل قول این ارسال در یک پاسخ

۰
ارسال:
  

*angle* پاسخ داده:

ساختمان داده/مرتبه زمانی

مرسی دوست عزیز از توضیحت.البته همون پاسخ من درست هست و به ازای i=1 مقدار j تا n جلو می رود چون n تغییری نمی کند به سوال توحه کن حرف شما وقتی درست هست که داشته باشیم
n=n-1 ولی در سوال داریم x=x+1
مشاهده‌ی وب‌سایت کاربر
نقل قول این ارسال در یک پاسخ

۰
ارسال:
  

mfXpert پاسخ داده:

ساختمان داده/مرتبه زمانی

(۱۶ مهر ۱۳۹۱ ۱۲:۴۳ ق.ظ)*angle* نوشته شده توسط:  مرسی دوست عزیز از توضیحت.البته همون پاسخ من درست هست و به ازای i=1 مقدار j تا n جلو می رود چون n تغییری نمی کند به سوال توحه کن حرف شما وقتی درست هست که داشته باشیم
n=n-1 ولی در سوال داریم x=x+1
ارسال شماره ۲ درسته. دربار اول تکرار حلقه بیرونی، شمارنده حلقه درونی یکی یکی اضافه میشه. در دور دوم اجرای حلقه بیرونی، شمارنده حلقه درونی دو تا دو تا افزایش پیدا می‌کنه و به همین ترتیب.
نقل قول این ارسال در یک پاسخ

۰
ارسال:
  

MojtabaArab پاسخ داده:

ساختمان داده/مرتبه زمانی

سلام دوست عزیز
همون پاسخی که شما نوشتید درسته و مرتبه زمانی (O(log n داره اگه به جوابی که خودتون نوشتید نگاه کنید کسر جواب بصورت صعودی توانی از ۲ میباشد در هر بار که i یک واحد کم میشود n/2 بار حلقه داخلی اجرا میشود
نقل قول این ارسال در یک پاسخ

ارسال:
  

azad_ahmadi پاسخ داده:

RE: ساختمان داده/مرتبه زمانی

(۲۱ مهر ۱۳۹۱ ۰۴:۴۸ ب.ظ)MojtabaArab نوشته شده توسط:  سلام دوست عزیز
همون پاسخی که شما نوشتید درسته و مرتبه زمانی (O(log n داره اگه به جوابی که خودتون نوشتید نگاه کنید کسر جواب بصورت صعودی توانی از ۲ میباشد در هر بار که i یک واحد کم میشود n/2 بار حلقه داخلی اجرا میشود

پاسخی که تو پست شماره اول داده شده، اشتباه است. اون پاسخ مربوط به سوال قبلی در کتاب پوران پژوهش هست.
بار اول n بار اجرا میشه.
بار دوم n/2 بار اجرا میشه.
بار سوم n/3 بار اجرا میشه.
...
بار آخر n/n بار اجرا میشه.

اگه بنویسیم : n + n/2 + n/3 + n/4 + ... + n/n میشه از یک n فاکتور گرفت و جواب میشه n * 1/2 + 1/3 + 1/4 + ... + 1/n (توجه کن که اون * n در همه ضرب شده پرانتزهاشو ننوشتم). حالا سری ۱/۲ + ۱/۳ + ۱/۴ + ... + ۱/n جوابش میشه logn که اگه اون n رو درش ضرب کنیم میشه nlogn.
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ



موضوع‌های مرتبط با این موضوع...
موضوع: نویسنده پاسخ: بازدید: آخرین ارسال
Question بهترین منبع ساختمان داده برای کنکور ارشد marvelous ۱۰ ۱۲,۵۹۴ ۱۵ آذر ۱۴۰۱ ۰۷:۵۶ ب.ظ
آخرین ارسال: msnmkh
  فیلم آموزش ساختمان داده negin_bt ۰ ۱,۲۷۶ ۲۰ مهر ۱۴۰۱ ۰۷:۵۶ ب.ظ
آخرین ارسال: negin_bt
Exclamation سلام لطفاً یکی به من بگه مرتبه زمانی ها چطوری به log تبدیل میشن فرمول داره؟؟ Azadam ۶ ۴,۹۳۶ ۰۶ دى ۱۴۰۰ ۰۹:۰۲ ق.ظ
آخرین ارسال: Soldier's life
  معرفی کتاب برای ساختمان داده siamakaf ۲ ۴,۶۷۶ ۱۲ آبان ۱۳۹۹ ۰۹:۲۱ ق.ظ
آخرین ارسال: siamakaf
  مرتبه ایجاد درخت rad.bahar ۱ ۳,۳۹۱ ۳۰ مهر ۱۳۹۹ ۰۳:۳۴ ب.ظ
آخرین ارسال: rad.bahar
  مرتبه شبه کد rad.bahar ۱ ۲,۳۴۸ ۲۲ مهر ۱۳۹۹ ۰۹:۳۲ ب.ظ
آخرین ارسال: BBumir
  حل مساله مرتبه زمانی حلقه های تو در تو sarashahi ۱۶ ۲۳,۰۵۶ ۱۹ خرداد ۱۳۹۹ ۰۱:۱۶ ب.ظ
آخرین ارسال: gillda
  ساختمان داده و پایگاه داده پارسه امیدوار ۴ ۴,۵۴۸ ۱۲ خرداد ۱۳۹۹ ۰۸:۰۳ ب.ظ
آخرین ارسال: marvelous
  مرتبه زمانی Sanazzz ۱۷ ۲۱,۶۵۱ ۰۹ اردیبهشت ۱۳۹۹ ۰۶:۴۶ ب.ظ
آخرین ارسال: mohsentafresh
  پیچیدگی زمانی اکشن های قابل اعمال در یک وضعیت اsepid8994 ۰ ۱,۷۹۲ ۲۹ اسفند ۱۳۹۸ ۱۲:۵۱ ب.ظ
آخرین ارسال: اsepid8994

پرش به انجمن:

Can I see some ID?

به خاطر سپاری رمز Cancel

Feeling left out?


نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. رمزت رو فراموش کردی؟ اینجا به یادت میاریم! close

رمزت رو فراموش کردی؟

Feeling left out?


نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. close