22 תשובות
איכס פייתון
^ איכס פייתון

בברכה, לחם פיט.
לחם פיט אמאמאמאמא
שניה כותב את הסקריפט ושולח
לא נראה לי
num = 5

def test():
numbers = []
result = 0
for i in range(1,num + 1):
numbers.append(i)
result += i
print(i)
print(result)

test()
לגבי הלהוסיף את הפעולות חשבוניות בשביל הדפסה אני מאמין שאת כבר יודעת איך, חסכתי לעצמי שורות קוד פשוט
אה כן אל תתייחס לזה כתבתי 2 גרסאות של סקריפט כי יצרתי עוד גרסא שעשיתי בה בדיקה מסויימת, בכל מקרה שכחתי למחוק את השורה הזאת חחח
איפה אתה רואה append בresult?
חח סבבה יפה
numbers, טעות שלי
אה זה בגלל שרציתי לעשות אחסון למספרים שיצאו כדי לעשות אחרי זה הדפסה שלהם אבל כשראיתי שהגעתי לעיקר ואני הבנתי שהיא לא תזדקק לזה כנראה אז וויתרתי על לכתוב את זה
דרך אגב באמת בסקריפט השני היה append למשהו דומה לresult בגלל זה לא הבנתי איפה ראית את זה
הבנתי, כן התבלבלתי במשתנה
מה זאת אומרת סיבוכיות o1? אף פעם לא שמעתי על המושג הזה
בכל מקרה הlist שימושי לפלט שאחרי זה פשוט לא עשיתי את הפלט עד הסוף כי לא היה לי סבלנות לזה
אני לא מכיר את פייתון אבל אפשר להשתמש בסכום סדרה ותהיה סיבוכיות (o(1
(num/2*(num+1
אנונימי
dancer_bear
בפתרון שלו עם ה-append
הסיבוכיות זמן ריצה היא o(n)
אבל הסיבוכיות מקום היא גם תהיה o(n)

בלי ה-append והליסט נקבל סיבוכיות מקום של o(1), שזה כמובן יותר יעיל (תופס פחות מקום בזיכרון) (אבל לא ביקשו ליסט ברשימה אז כמובן שצריך למחוק את זה בפתרון).
למה עשית append לnumbers חח
נכון, בגלל זה הסיבוכיות זמן ריצה היא o(n)
אבל הסיבוכיות מקום הוא o1
מה זאת אומרת סיבוכיות? ^
אני לא למדתי במגמת מדעי המחשב וזה ידע מהבית, אם אתה רוצה אתה מוזמן לפרט פה או בפרטי וכשאבין בדיוק מה השאלה אני אסביר.
^ למה עשית list? סתם תופס סיבוכיות מקום של o(n) במקוםo(1 ואני לא חושב שביקשו