ABA


"שאלה קטנה :| אמורה להיות די פשוטה, בסיבוכיות"
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #14199 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 14199
TheBinary

   15:34   10.07.07   
אל הפורום  
  שאלה קטנה :| אמורה להיות די פשוטה, בסיבוכיות  
 
   ערכתי לאחרונה בתאריך 10.07.07 בשעה 15:35 בברכה, TheBinary
 
אני צריך למצוא את המקסימום והמינימום של מערך חד מימדי. (שניהם ביחד)
הקוד הוא מאוד פשוט, הנה:

int min=arr{0}, max=arr{0};
for (int i=1; i<arr.length; i++)
{
if (min>arr{i})
min=arr{i};
else if (max<arr{i})
max=arr{i};
}

הבעיה היא שאני צריך לכתוב את זה עם פחות השוואות. כרגע יש 3(n-1) שזה 3n-3 השוואות, כי על כל איבר הוא עושה 3 השוואות חוץ מהאיבר הראשון.
יש רמז, והוא שמותר לשנות את סיבוכיות המקום (מותר להגדיר מערך בגודל n)
כנראה שמספר ההשוואות צריך להיות 3n/2 לפי מה שהבנתי.

אני צריך את זה עד יום חמישי :| תודה


                                שתף        
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

  האשכול     מחבר     תאריך כתיבה     מספר  
  :] TheBinary 10.07.07 21:38 1
     ממש טיפשות (לא אתה , המורה שנתן את השאלה הזאת) Net_Boy  11.07.07 00:03 2
         תכלס DLN 11.07.07 00:05 3
         זה עוד יותר גרוע ממה שאתה חושב TheBinary 11.07.07 11:11 4
             שיהיה הרבה בהצלחה (אנחנו עושים את אותו תואר אגב) Net_Boy  11.07.07 21:28 5
                 בהצלחה :] איך דיסקרטית, קשה? כנראה אני אקח אותו ב-2008א TheBinary 12.07.07 00:30 6
                     כן קשה , אבל לפי מה שהבנתי יחסית לשאר המתמטיקה בתואר Net_Boy  12.07.07 16:40 7
                         חח שמעתי כבר סיפורים על אינפי TheBinary 12.07.07 23:11 8
                             אחי אתה לא בן 16? מה אתה עושה באוניברסיטה הפתוחה :| DLN 12.07.07 23:21 9
                                 בן 15 ואני עושה תואר ראשון :P TheBinary 12.07.07 23:32 10
                                     פשש סחטיין DLN 13.07.07 01:10 11
                                         למה דפוק? :| TheBinary 13.07.07 23:20 14
                                             זהו בדיעבד זה נראה אחלה של דבר :| DLN 14.07.07 00:57 15
                                     בהצלחה בתואר Static 13.07.07 01:28 12
                                         איפה אתה לומד? זה מאד משתנה ממקום למקום Net_Boy  13.07.07 14:01 13
     קצת ייעול איש-האבוקות 14.07.07 12:33 16
         חח צודק, בכל מקרה המבחן כבר היה :| TheBinary 14.07.07 15:29 17

       
TheBinary

   21:38   10.07.07   
אל הפורום  
  1. :]  
בתגובה להודעה מספר 0
 
  

int n;
if (arr.length%2==0)
n=arr.length/2;
else
n=arr.length/2+1;
int[] tempMax=new int[n];
int[] tempMin=new int[n];
int max=Integer.MIN_VALUE, min=Integer.MAX_VALUE;
int iTemp=0;

for (int i=1; i<arr.length; i=i+2, iTemp++)
{
if (arr[i]>arr[i-1])
{
tempMax[iTemp]=arr[i];
tempMin[iTemp]=arr[i-1];
}
else
{
tempMin[iTemp]=arr[i];
tempMax[iTemp]=arr[i-1];
}
}

for (int i=0; i<tempMax.length; i++)
{
if (max<tempMax[i]) max=tempMax[i];
}


for (int i=0; i<tempMin.length; i++)
{
if (min>tempMin[i]) min=tempMin[i];
}


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Net_Boy  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 1.4.02
17151 הודעות, 1 פידבק
   00:03   11.07.07   
אל הפורום  
  2. ממש טיפשות (לא אתה , המורה שנתן את השאלה הזאת)  
בתגובה להודעה מספר 1
 
   הקוד שרשמת בתגובה הראשונה הוא מצוין
למי לעזאזל אכפת ממספר השוואות ? זה כל כך זניח ולא קשור לסיבוכיות


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
DLN
חבר מתאריך 20.4.07
15884 הודעות
   00:05   11.07.07   
אל הפורום  
  3. תכלס  
בתגובה להודעה מספר 2
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
TheBinary

   11:11   11.07.07   
אל הפורום  
  4. זה עוד יותר גרוע ממה שאתה חושב  
בתגובה להודעה מספר 2
 
   זאת היתה שאלה ממבחן קודם בקורס שלי (מבוא למדעי המחשב ושפת Java באוניברסיטה הפתוחה) :|
ובגלל שביום חמישי יש לי את המבחן, פתרתי שאלות ממבחנים קודמים אז נתקלתי בה.

אני לא מבין מי יחליט לשים שאלה כזו במבחן - של שיפור יעילות בקבוע ולא בזמן גודל, שבא על חשבון המון דברים אחרים כמו סיבוכיות המקום ורק הורס את הפתרון.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Net_Boy  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 1.4.02
17151 הודעות, 1 פידבק
   21:28   11.07.07   
אל הפורום  
  5. שיהיה הרבה בהצלחה (אנחנו עושים את אותו תואר אגב)  
בתגובה להודעה מספר 4
 
   אני שבוע הבא יש לי מבחן במתמטיקה דיסקרטית


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
TheBinary

   00:30   12.07.07   
אל הפורום  
  6. בהצלחה :] איך דיסקרטית, קשה? כנראה אני אקח אותו ב-2008א  
בתגובה להודעה מספר 5
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Net_Boy  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 1.4.02
17151 הודעות, 1 פידבק
   16:40   12.07.07   
אל הפורום  
  7. כן קשה , אבל לפי מה שהבנתי יחסית לשאר המתמטיקה בתואר  
בתגובה להודעה מספר 6
 
   זה הקל שבקשים :\


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
TheBinary

   23:11   12.07.07   
אל הפורום  
  8. חח שמעתי כבר סיפורים על אינפי  
בתגובה להודעה מספר 7
 
   המבחן היה ממש קשה!
שינו את הנוסח דווקא בסמסטר שלי חחח
במקום 4 שאלות,
עשו 3 שאלות
אחת רקורסיה
אחת יעילות ורשימות ביחד
ואחת שמורכבת מ-10 סעיפים "קטנים" (שהם היו ממש לא קטנים)
שצריך לענות על 8 מהם

הצלחתי הכל, רק שהייתה לי טעות ממש מעצבנת וקטנה בשאלה 2
אחרי שעשיתי reverse לרשימה כלשהי, שכחתי לשנות את ה-head בסוף :| והלך כל הפתרון
אבל אני מקווה שזה לא יוריד הרבה נק', סה"כ מה שחשוב בשאלות על רשימות ובעיקר יעילות זה האלגוריתמיקה ולא הביצוע המעשי.

היה מבחן ממש קשה יחסית למבחנים מסמסטרים קודמים (בהשוואה למבחנים לדוגמה)
הגזימו הפעם.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
DLN
חבר מתאריך 20.4.07
15884 הודעות
   23:21   12.07.07   
אל הפורום  
  9. אחי אתה לא בן 16? מה אתה עושה באוניברסיטה הפתוחה :|  
בתגובה להודעה מספר 8
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
TheBinary

   23:32   12.07.07   
אל הפורום  
  10. בן 15 ואני עושה תואר ראשון :P  
בתגובה להודעה מספר 9
 
   עד סוף י"ב אני מסיים חצי תואר
ואז הצבא נותן לי דיחוי שנה שאני משלים את התואר
ומתגייס עם תואר :]


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
DLN
חבר מתאריך 20.4.07
15884 הודעות
   01:10   13.07.07   
אל הפורום  
  11. פשש סחטיין  
בתגובה להודעה מספר 10
 
   חשבתי על זה פעם וחשבתי שזה דפוק אז לא עשיתי :|
דווקא נשמע טוב בדיעבד


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
TheBinary

   23:20   13.07.07   
אל הפורום  
  14. למה דפוק? :|  
בתגובה להודעה מספר 11
 
   כל עוד אני יכול לעמוד בעומס (ואני לא ממש חורש בשביל זה) זה מצוין לדעתי


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
DLN
חבר מתאריך 20.4.07
15884 הודעות
   00:57   14.07.07   
אל הפורום  
  15. זהו בדיעבד זה נראה אחלה של דבר :|  
בתגובה להודעה מספר 14
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Static
חבר מתאריך 1.7.02
1329 הודעות
   01:28   13.07.07   
אל הפורום  
  12. בהצלחה בתואר  
בתגובה להודעה מספר 10
 
   דיסקרטית זה קליל..
אינפי גם לא ממש נורא...

חכה שתגיע ל:

מבנים אלגברים
חישוביות
ואוטומטים (לא כמו בתיכון.. ברמה הרבה יותר קשה..)


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Net_Boy  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 1.4.02
17151 הודעות, 1 פידבק
   14:01   13.07.07   
אל הפורום  
  13. איפה אתה לומד? זה מאד משתנה ממקום למקום  
בתגובה להודעה מספר 12
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
איש-האבוקות

   12:33   14.07.07   
אל הפורום  
  16. קצת ייעול  
בתגובה להודעה מספר 1
 
  

int n=arr.length/2 + arr.length%2;
int tempMax=new int;
int tempMin=new int;
int max=Integer.MIN_VALUE, min=Integer.MAX_VALUE;
int iTemp=0;
for (int i=1; i<arr.length; i=i+2, iTemp++)
{
if (arr>arr)
{
tempMax=arr;
tempMin=arr;
}
else
{
tempMin=arr;
tempMax=arr;
}
}
for (int i=0; i<n; i++)
{
if (max<tempMax) max=tempMax;
if (min>tempMin) min=tempMin;
}

לא משהו רציני שמשפיע בסדר גודל או במספר הפעולות שאתה סופר (אני מניח שאתה לא סופר תהשוואות שמתבצעות בתנאי של הלולאה)
בקיצור סתם ייעול בקוד


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
TheBinary

   15:29   14.07.07   
אל הפורום  
  17. חח צודק, בכל מקרה המבחן כבר היה :|  
בתגובה להודעה מספר 16
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

תגובה מהירה  למכתב מספר: 
 
___________________________________________________________________

___________________________________________________________________
למנהלים:  נעל | תייק בארכיון | מחק | העבר לפורום אחר | מחק תגובות | עגן אשכול
       



© כל הזכויות שמורות ל-רוטר.נט בע"מ rotter.net