שאלה ממש קטנה ומפגרת שמציקה לי- דחוף לפני המבחן

מנהל: TA_Isana

שאלה ממש קטנה ומפגרת שמציקה לי- דחוף לפני המבחן

הודעהעל ידי Shirley_sw » 07:52 26/07/2009

בוקר טוב,

משהו קטן שמציק לי,

כשיוצרים מערך בפונקציית איתחול, משום מה אני זוכרת שדיברנו על זה שזה 0(1)
אבל בעצם זה לא מסתדר לי כי הרי ג'אבה מאפסת את המערך אם הוא של שלמים, או שמה לו false אם זה בולייאן וכו'..
אז זה 0(1) או בבכלל 0(n)??


תודה רבה.. :oops:
Shirley_sw
 
הודעות: 22
הצטרף: 13:00 12/12/2008

Re: שאלה ממש קטנה ומפגרת שמציקה לי- דחוף לפני המבחן

הודעהעל ידי halpertc » 08:10 26/07/2009

Java לא מאפסת את כל המערך אלא משתמשת ב-3 מערכים כדי לדמות איפוס כמו שראינו באחד התרגולים.
halpertc
 
הודעות: 6
הצטרף: 14:01 29/04/2009

Re: שאלה ממש קטנה ומפגרת שמציקה לי- דחוף לפני המבחן

הודעהעל ידי Shirley_sw » 08:12 26/07/2009

אתה מדבר על smart array?
אז אני יכולה לכתוב שאני משתמשת "במערך" (ולא להדגיש מערך חכם) ולהגיד שפעולת האיתחול לוקחת 0(1)? שאר הפעולות של מערך חכם הן באותו זמן כמו מערך רגיל?
Shirley_sw
 
הודעות: 22
הצטרף: 13:00 12/12/2008

Re: שאלה ממש קטנה ומפגרת שמציקה לי- דחוף לפני המבחן

הודעהעל ידי TA_Gila » 12:13 26/07/2009

אם לא מציינים שמדובר במערך חכם (כמו זה שראינו בתירגול) אז ברור שזמן האיתחול לא יהיה קבוע אלא כגודל המערך.

באופן דומה, אם משתמשים ב-BST אי-אפשר לטעון שהזמן שלוקחת כל פעולה בסיסית הוא (O(log n. בשביל זה צריך להשתמש דווקא בעץ מאוזן, למשל בעץ AVL ולציין זאת במפורש!
TA_Gila
 
הודעות: 66
הצטרף: 13:56 24/04/2009


חזור אל - מבני נתונים

מי מחובר

משתמשים הגולשים בפורום זה: אין משתמשים רשומים ואורח אחד