אה, נראה לי שהבנתי,
אחרי הקטע של:
if (pos2 == null)
return true;
צריך לאתחל את pos2 חזרה לערך הראשון של הרשימה q2. (וזה מחוץ ל-if, כלומר, מיד אחריו)
One day your life will flash before your eyes. Make sure it's worth watching
אם הבנתי את השאלה שלך נכון... זה הפתרון
public static bool InList(List<int> list1, List<int> list2)
{
Node<int> p1 = list1.GetFirst();
Node<int> p2 = list2.GetFirst();
while (p1 != null && p2 != null)
{
if (p1.GetInfo() == p2.GetInfo())
{
p1 = p1.GetNext();
p2 = p2.GetNext();
}
else if (p1 != list1.GetFirst())
p1 = list1.GetFirst();
else p2 = p2.GetNext();
}
if (p1 == null)
return true;
else return false;
נערך לאחרונה על ידי nofarss1, 02-03-2012 בשעה 16:29 סיבה: הסוגריים התהפכו לי בכתיבה אני מקווה שתבין
כרגע 1 משתמשים צופים באשכול זה. (0 חברים ו 1 אורחים )
סימניות