Dont say a word
New member
יעילות
יש לי HashTable שמכיל מערכים של stringים, ואני צריך לבנות פונקציה שבהינתן string כזה
יש לי HashTable שמכיל מערכים של stringים, ואני צריך לבנות פונקציה שבהינתן string כזה
abcd
אני מפרק את ה-string ל-4 וכל תו מהווה key ל-hashTable ואני צריך ליצור צירוף של כל הצירופים, אז כתבתי את הפונקציה אבל כשהקלט גדול יותר מ-17 המחשב נתקע לגמרי, השאלה שלי האם אפשר לשפר את האלגוריתם (סיבוכיות) או את הקוד עצמו תודה מראשprivate static ArrayList getDnaHelixesFromProtein(string protein) { if (protein.Length == 1) return new ArrayList((ICollection)revCodon[protein]); char let = protein[0]; ArrayList aRet = getDnaHelixesFromProtein(protein.Substring(1, protein.Length-1)), aRes = new ArrayList(); string[] tmp = (string [])revCodon[let.ToString()]; for (int j = 0, len = tmp.Length; j < len; j++) { for (int i = 0; i < aRet.Count; i++) { aRes.Add(tmp[j] + aRet); } } return aRes; }