נרגילה לייט
New member
שאלה קשה (C) - נשברתי
שלום לכולם... לכאורה זו נראית שאלה פשוטה - לא יודע אולי פשוט לא בא לי בראש הכיוון הנכון.... השאלה: מקבלים שני עצים בינאריים וצריך לסרוק אותם בצורה יעילה ולהכניס למערך דינמי את כל האיברים הזהים.... כתבתי דבר כזה:
שלום לכולם... לכאורה זו נראית שאלה פשוטה - לא יודע אולי פשוט לא בא לי בראש הכיוון הנכון.... השאלה: מקבלים שני עצים בינאריים וצריך לסרוק אותם בצורה יעילה ולהכניס למערך דינמי את כל האיברים הזהים.... כתבתי דבר כזה:
void CompTree(t_node *root1, t_node *root2, int *indx, char **res_arr) { if (root1==NULL || root2==NULL) return; else { CompTree(root1->left,root2,indx,res_arr); CompTree(root1->right,root2,indx,res_arr); CompTree(root1,root2->left,indx,res_arr); CompTree(root1,root2->right,indx,res_arr); if (root1->value==root2->value) { (*res_arr) = (char *) realloc ((*res_arr),(sizeof(int) * (*indx))); (*res_arr)[*indx-1]=root1->value; (*indx) = (*indx)+1; return; } } return; } אשמח לקבל רעיונות כיוון או כל רמז אחר... תודה מראש