לוגו אתר Fresh          
 
 
  אפשרות תפריט  ראשי     אפשרות תפריט  צ'אט     אפשרות תפריט  מבזקים     אפשרות תפריט  צור קשר     חץ שמאלה ‎print ‎"Hello World!"; if‎ ‎not rules.‎know ‎then rules.‎read(); חץ ימינה  

לך אחורה   לובי הפורומים > מחשבים > תכנות ובניית אתרים
שמור לעצמך קישור לדף זה באתרי שמירת קישורים חברתיים
תגובה
 
כלי אשכול חפש באשכול זה



  #1  
ישן 28-02-2011, 19:21
  משתמש זכר Quick Quick אינו מחובר  
 
חבר מתאריך: 12.02.05
הודעות: 4,020
רשימה מקושרת ב-Java

יש לי רעיון מסוים ואני לא בטוח שהוא עובד.

נגיד ואני רוצה למחוק חוליה מרשימה, מה שאני בד"כ עושה זה רץ מה-first של הרשימה עד לאיבר שה-next שלו הוא האיבר שאני רוצה למחוק, ואז אני משנה את ה-next שלו ל-next של האיבר שאני רוצה למחוק, ככה "דילגתי" על האיבר, והכל טוב יפה.
(כמובן שאני אשנה את ה-next של האיבר עצמו ל-null כדי שה-garbage collector יאסוף אותו.

חשבתי על שיטה אחרת, מה שעושים זה משנים את ה-info של האיבר שרוצים למחוק ל-info של האיבר הבא, ואז מוחקים את האיבר הבא בשיטה הישנה. ככה מחקתי איבר ביעילות של O(1) ולא O(n)...

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

זה יעבוד?
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #5  
ישן 02-03-2011, 16:04
  The_Equivocator The_Equivocator אינו מחובר  
 
חבר מתאריך: 11.02.04
הודעות: 16,543
בתגובה להודעה מספר 1 שנכתבה על ידי Quick שמתחילה ב "רשימה מקושרת ב-Java"

כן, אבל בשביל מה זה טוב?..
יש מודלים מוכנים וטובים לעבודה עם רשימות מקושרות, יש ווקטורים, אין שום טעם ב"להמציא את הגלגל מחדש".

ציטוט:
(כמובן שאני אשנה את ה-next של האיבר עצמו ל-null כדי שה-garbage collector יאסוף אותו.


אין שום קשר, הגרבג קולקטור מוחק איברים שאין דרך להגיעה אליהם(אלו שאין פוינטר המצביע עליהם!).


ציטוט:
אני מדבר על המקרה שאני יכול להסתכל על האיבר שאני רוצה למחוק וקדימה.


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

כלי אשכול חפש באשכול זה
חפש באשכול זה:

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

מזער את תיבת המידע אפשרויות משלוח הודעות
אתה לא יכול לפתוח אשכולות חדשים
אתה לא יכול להגיב לאשכולות
אתה לא יכול לצרף קבצים
אתה לא יכול לערוך את ההודעות שלך

קוד vB פעיל
קוד [IMG] פעיל
קוד HTML כבוי
מעבר לפורום



כל הזמנים המוצגים בדף זה הם לפי איזור זמן GMT +2. השעה כעת היא 00:35

הדף נוצר ב 0.05 שניות עם 10 שאילתות

הפורום מבוסס על vBulletin, גירסא 3.0.6
כל הזכויות לתוכנת הפורומים שמורות © 2024 - 2000 לחברת Jelsoft Enterprises.
כל הזכויות שמורות ל Fresh.co.il ©

צור קשר | תקנון האתר