פורסם 2011 בפברואר 514 שנים אני צריך עזרה במימוש הפעולה הזו: public static void compressSequences (Node<Character> chain) הפעולה מקבלת שרשרת חוליות של תווים.הפעולה תצמצם רצפי תווים, כך שלא יופיעו תווים זהים ברצף. התו הראשון בכל רצף יישאר וכל השאר יוסרו. יש לשמור על סדר התווים. המחלקה Node: public class Node<T>{ private T info; private Node<T> next; public Node (T x) { this.info=x; this.next=null; } public Node(T x, Node<T> next) { this.info=x; this.next=next; } public Node<T> getNext() { return this.next; } public void setNext(Node<T> next) { this.next=next; } public T getInfo() { return this.info; } public void setInfo(T x) { this.info=x; } public String toString() { return this.info.toString(); }} תודה מראש
פורסם 2011 בפברואר 514 שנים יעזור אם תאמר (גם בכותרת) באיזו שפה אתה כותב.חוץ מזה, כמו שאני אומר תמיד: אף אחד לא יפתור לך את התרגיל. תאמר מה ניסית לעשות וננסה לעזור לך.
פורסם 2011 בפברואר 514 שנים זה נראה C#. בכל מקרה, תחשוב על זה כמו חיפוש במערך, רק עם שני הבדלים שיהיה עליך להתמודד איתן: המעבר בין איבר לאיבר הוא לא סתם בעזרת i++, אתה צריך לקדם מצביע כלשהו אין לך אפשרות לחזור אחורנית עם המצביע שלך תחשוב איך להתמודד עם זה
פורסם 2011 במרץ 314 שנים לי זה לא נראה כמו C# אלא כמו Java. public static void compressSequences(Node <Character> chain) { Node<Character>pos=chain; while (pos.getNext()!=null) { if (pos.getInfo()==pos.getNext().getInfo()) pos.setNext(pos.getNext().getNext()); else pos=pos.getNext(); } }
פורסם 2011 במרץ 914 שנים אני כבר בקושי זוכר חומר של תיכון אבל שני דברים -התנאי בודק אחד קדימה ואחכ אתה משתמש בשניים קדימה - ארור האלס נראלי טעות כי תמיד צריך להתקדם לא רק אם מחקנוהתיקון לדעתי זה לבדוק בלולאה שניים קדימה ולהוסיף באיף פוס=...רק שמישהו יגיד אם צדקתי כי אינלי מושג...
פורסם 2011 במרץ 1014 שנים האלס נראלי טעות כי תמיד צריך להתקדם לא רק אם מחקנואתה צריך להתקדם רק אם בחוליה הבאה אין את אותו תו, אחרת אתה צריך למחוק. (תחשוב על מחיקה כסוג של התקדמות).למען הסר ספק הרצתי את הקוד לפני שפרסמתי אותו
פורסם 2011 במרץ 1114 שנים צודק. לא לקחתי בחשבון שצריך לבדוק את הזוג החדש שנוצר.אבל עדיין איך אתה בודק רק פוז אחד קדימה בלולאה, ובתוכו אתה אומר "pos.getNext().getNext()" ?
פורסם 2011 במרץ 1114 שנים אין שום בעיה עם זה. הבדיקה מבטיחה ש-pos.getNext אינו null ולכן אפשר להפעיל את הפונקציות שלו. במקרה ש-pos הוא האיבר הלפני אחרון, pos.getNext().getNext() הוא null.
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.