עבור לתוכן
View in the app

A better way to browse. Learn more.

HWzone

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

JAVA: יישור רשימה המכילה מעגל

Featured Replies

פורסם

יש לכתוב מתודה סטטית בג'אווה המקבלת מצביע לראש רשימה המכילה מעגל, ומצביע לצומת כלשהו בתוך המעגל. המתודה תהפוך את הרשימה לרשימה חסרת מעגלים תוך שמירה על סדר האיברים. היא אינה מחזירה ערך (void).דרישות:*יש להיעזר במתודה סטטית reverseList (אותה אין צורך לממש!) המקבלת מצביע לראש רשימה חד-כיוונית חסרת מעגלים, הופכת את הרשימה ומחזירה את ראש הרשימה ההפוכה.*סיבוכיות זמן O(n) .*ניתן להקצות זיכרון אבל רק בגודל קבוע.*מותר שיטות עזר.

בשאלה המקורית אין חיוב להשתמש במתודת הרוורס ולכן הצלחתי לפתור.

אבל לפתור בעזרת הרוורס - לא הצלחתי!

לכן אני פונה אליכם. אודה לכל רמז/ עצה/ כיוון....

פורסם
  • מחבר

יש שתי דרכים:

האחת, שידרוג של אלגוריתם הצב והארנב שמיועד במקור להוכיח קיום מעגל ברשימה. את השדרוג קיבלתי בפורום אחר ובו מוסיפים צב נוסף וחישוב mod כדי להגיע לתחילת המעגל.

השניה, שאני לא בטוחה בה כי לא הרצתי, היא קצת ארוכה ובה מפצלים את הרשימה החל מהצומת הפנימי המוצבע, סופרים צמתים בכל אחת מהרשימות, ומחשבים את נק' המפגש...

אבל מכיוון שהשאלה המקורית היא דווקא עם הרוורס, מאוד הייתי רוצה לפתור אותה.

תודה מראש!

פורסם

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

פורסם
  • מחבר

בוודאי ששיחקתי עם זה. עד שהתייאשתי!

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

פורסם

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

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.