Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /// <summary>
- /// טענת כניסה: הפעולה מקבלת מספר שלם המייצג מספר חוליות
- /// טענת יציאה: הפעולה תבנה ותחזיר הפנייה לשרשרת חוליות, בה יוכנסו הערכים 1 עד לערך המייצג את גודל שרשרת החוליות
- /// </summary>
- /// <param name="size"></param>
- /// <returns></returns>
- public static Node<int> BuildList(int size)
- {
- Node<int> lst = new Node<int>(1);
- Node<int> pos = lst;
- for (int i = 2; i <= size; i++)
- {
- pos.SetNext(new Node<int>(i));
- pos = pos.GetNext();
- }
- return lst;
- }
- /// <summary>
- /// טענת כניסה: הפעולה המקבלת מספר שלם המייצג מספר חוליות.
- /// טענת יציאה: הפעולה תבנה ותחזיר הפנייה לשרשרת חוליות, בה יוכנסו הערכים מ-n ועד ל-1
- /// </summary>
- /// <param name="size"></param>
- /// <returns></returns>
- public static Node<int> BuildListBack(int size)
- {
- Node<int> lst = new Node<int>(1);
- for (int i = 2; i <= size; i++)
- {
- lst = new Node<int>(i, lst);
- }
- return lst;
- }
- /// <summary>
- /// טענת כניסה: הפעולה לא מקבלת ערכים
- /// טענת יציאה: הפעולה בונה ומחזירה הפנייה לשרשרת חוליות, בה יוכנסו הערכים לשרשרת לפי סדר קליטתם
- /// </summary>
- /// <returns></returns>
- public static Node<int> BuildList()
- {
- Node<int> lst = null, pos = null;
- int num = int.Parse(Console.ReadLine());
- while (num != -999)
- {
- if (lst == null)
- {
- lst = new Node<int>(num);
- pos = lst;
- }
- else
- {
- pos.SetNext(new Node<int>(num));
- pos = pos.GetNext();
- }
- num = int.Parse(Console.ReadLine());
- }
- return lst;
- }
- /// <summary>
- /// טענת כניסה: הפעולה המקבלת מערך של מספרים שלמים
- /// טענת יציאה: הפעולה תבנה ותחזיר הפנייה לשרשרת חוליות, בה יוכנסו הערכים כל ערכי המערך
- /// </summary>
- /// <param name="arr"></param>
- /// <returns></returns>
- public static Node<int> BuildList(int[] arr)
- {
- Node<int> lst = new Node<int>(arr[0]);
- Node<int> pos = lst;
- for (int i = 1; i < arr.Length; i++)
- {
- pos.SetNext(new Node<int>(arr[i]));
- pos = pos.GetNext();
- }
- return lst;
- }
- /// <summary>
- /// טענת כניסה: הפעולה המקבלת הפנייה לשרשרת חוליות של מספרים שלמים
- /// טענת יציאה: הפעולה תדפיס את כל ערכי החוליות בשרשרת
- /// </summary>
- /// <param name="lst"></param>
- public static void PrintList(Node<int> lst)
- {
- while (lst != null)
- {
- Console.Write(lst.GetValue() +", ");
- lst = lst.GetNext();
- }
- Console.WriteLine();
- }
- /// <summary>
- /// טענת כניסה: הפעולה מקבלת הפנייה של שרשרת חוליות של מספרים שלמים
- /// טענת יציאה: הפעולה תחזיר הפניה לערך הגדול ביותר החל במקום מסוים בשרשרת חוליות
- /// </summary>
- /// <param name="pos"></param>
- /// <returns></returns>
- public static Node<int> GetMaxPosition(Node<int> pos)
- {
- Node<int> maxPos = pos;
- pos = pos.GetNext();
- while (pos != null)
- {
- if (pos.GetValue() > maxPos.GetValue())
- maxPos = pos;
- pos = pos.GetNext();
- }
- return maxPos;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement