כללי אצבע לבגרות במדעי המחשב:כלל מספר אחד:הביאו את...

כללי אצבע לבגרות במדעי המחשב:

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

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

כללת מספר שלוש:
השוואת מחרוזות:
java:
String name1 ="almog";
String name2 = "almog";

דרך לא טובה: היא להשתמש ב ==.
name1==name2
הדרך הנכונה:
if(name1.equals(name2))



c#:
string name1 ="almog";
string name2 = "almog";

דרך לא טובה: היא להשתמש ב ==.

הדרך הנכונה:
if(name1.Equals(name2))



השוואת תווים יכולה להתקיים עם ==!!


כלל מספר ארבע:
כאשר אתם מציינים סיבוכיות עם פרמטר או פרמטרים יש לציין ולהסביר מהו הפרטמר.
O(n)
חובה להסביר מהו הפרמטר n.



כלל מספר חמש:
גישה לאיבר בתור, אך ורק אם התור לא ריק!
Java:
Queue<Integer> q = new Queue<Integer>();
q.head(); // אולי התור ריק... ואז זה יקרוס

if( !q.isEmpty())
q.head(); // q.remove()



C#:
Queue<int> q = new Queue<int>();
q.Head(); // אולי התור ריק... ואז זה יקרוס

if( !q.IsEmpty())
q.Head(); // q.Remove()


כלל מספר שש:
כיצד ליצור רשימה ריקה?
java:
Node<Integer> n = new Node<Integer>();
Node<Integer> n = null; //correct

C#:
Node<int> n = new Node<int>();
Node<int> n = null; //correct



פעולות על חולייה:
java:
Node<Integer> n = new Node<Integer>(23,null);

n.getValue(); // מביא לי את הערך שבסוגריים המשולשות
n.setValue(34); //משנה את ערכו
n.getNext(); // מביא לי את החולייה הבאה
n.setNext(n2); // גורם לחולייה להצביע למישהו אחר
n.hasNext();// האם יש חולייה הבאה שהיא לא נאל


c#:
Node<int> n = new Node<int>(23,null);

n.GetValue(); // מביא לי את הערך שבסוגריים המשולשות
n.SetValue(34); //משנה את ערכו
n.GetNext(); // מביא לי את החולייה הבאה
n.SetNext(n2); // גורם לחולייה להצביע למישהו אחר
n.HasNext();// האם יש חולייה הבאה שהיא לא נאל