מבוא למדעי המחשב - חובלים

מסמכים קשורים
אוניברסיטת חיפה החוג למדעי המחשב מרצה: שולי וינטנר מתרגלים: נעמה טוויטו, מחמוד שריף מבוא למדעי המחשב סמסטר א' תשע"ב בחינת סיום, מועד א', הנחי

מבוא למדעי המחשב - חובלים

אוניברסיטת חיפה החוג למדעי המחשב מרצה: שולי וינטנר מתרגלים: נעמה טוויטו, מחמוד שריף מבוא למדעי המחשב סמסטר א' תשע"ב בחינת סיום, מועד א', הנחי

Microsoft Word - c_SimA_MoedB2005.doc

אוניברסיטת חיפה החוג למדעי המחשב מבוא למדעי המחשב מועד א' סמסטר ב', תשע"ג, משך המבחן: שעתיים וחצי חומר עזר: אסור הנחיות: וודאו כי יש בידיכם

Microsoft Word B

אוניברסיטת חיפה החוג למדעי המחשב.5.6 מבוא למדעי המחשב סמסטר א' תשע"ז בחינה סופית מועד א', מרצה: שולי וינטנר מתרגלים: סמאח אידריס, ראמי עילבו

שאלהIgal : מערכים דו מימדיים רקורסיה:

שאלהIgal : מערכים דו מימדיים רקורסיה:

הגשה תוך שבוע בשעת התרגול

מספר זהות: סמסטר ב' מועד א' תאריך: 11102/4// שעה: 9:22 משך הבחינה: 3 שעות חומר עזר: אין מותר השימוש במחשבון פשוט בחינה בקורס: מבני נתונים מרצה: הדר בי

שאלהIgal : מערכים דו מימדיים רקורסיה:

הגשה תוך שבוע בשעת התרגול

פתרון מוצע לבחינת מה"ט ב_שפת c מועד ב אביב תשע"ט, אפריל 2019 מחברת: גב' זהבה לביא, מכללת אורט רחובות שאלה מספר 1 מוגדרת מחרוזת המורכבת מהספרות 0 עד 9.

מבוא לתכנות ב- JAVA תרגול 7

אוניברסיטת בן גוריון בנגב תאריך המבחן: שם המרצה: מר אלכסנדר שקולניק, בשפת JAVA מבחן ב: מבוא לתכנות מס' הקורס : מיועד לתלמידי : הנד

מבוא לתכנות ב- JAVA תרגול 11

מבחן סוף סמסטר מועד ב 28/10/08 מרצה אחראית: דר שירלי הלוי גינסברג מתרגלים: גלעד קותיאל, גדי אלכסנדרוביץ הוראות: א. בטופס המבחן 6 עמודים (כולל דף זה) ו

PowerPoint Presentation

Programming

Slide 1

אוניברסיטת בן גוריון בנגב תאריך המבחן: שקולניק אלכסנדר שם המרצה: מר בשפת JAVA מבוא לתכנות מבחן ב: מס' הקורס : הנדסת תעשיה וניהול מ

Slide 1

PRESENTATION NAME

Microsoft Word - c_SimA_MoedA2006.doc

סדנת תכנות ב C/C++

מספר מחברת: עמוד 1 מתוך 11 ת"ז: תשע"א מועד ב סמסטר א' תאריך: 00:11 שעה: 0 שעות הבחינה: משך כל חומר עזר אסור בשימוש בחינה בקורס: מבוא למדעי ה

תרגול 1

תאריך פרסום: תאריך הגשה: מבנה נתונים תרגיל 5 )תיאורטי( מרצה ומתרגל אחראים: צחי רוזן, דינה סבטליצקי נהלי הגשת עבודה: -את העבודה יש לה

מבחן סוף סמסטר מועד א 15/02/08 מרצה אחראית: דר שירלי הלוי גינסברג מתרגלים: גלעד קותיאל, דניאל גנקין הוראות: א. בטופס המבחן 7 עמודים ו 4 דפי נוסחאות. ב

234114

Tutorial 11

Slide 1

מבוא למדעי המחשב

תכנות מונחה עצמים א' – תש"ע

שיעור 1

בס"ד תרגיל 3 מועד אחרון ל כללי בתרגיל זה עליכם לכתוב תוכנה שמדמה מאגר נתונים של חנות. את מוצרי החנות תייצגו באמצעות עצים ורשימות מקושרות יהיה עליכם לנ

Microsoft Word - ExamA_Final_Solution.docx

Microsoft PowerPoint - rec1.ppt

Slide 1

תכנות דינמי פרק 6, סעיפים 1-6, ב- Kleinberg/Tardos סכום חלקי מרחק עריכה הרעיון: במקום להרחיב פתרון חלקי יחיד בכל צעד, נרחיב כמה פתרונות אפשריים וניקח

תורת החישוביות תרגול הכנה לוגיקה ותורת הקבוצות מה יש כאן? בקורס תורת החישוביות נניח ידע בסיסי בתורת הקבוצות ובלוגיקה, והכרות עם מושגים בסיסיים כמו א"ב

Slide 1

Slide 1

תרגיל בית מספר 1#

תכנון אלגוריתמים עבודת בית 4: תכנון אלגוריתמים תאריך הגשה: 02: , בצהריים,תא מספר 66 בקומת כניסה של בניין 003 מתרגל אחראי: אורי 0

פתרון 2000 א. טבלת מעקב אחר ביצוע האלגוריתם הנתון עבור הערכים : פלט num = 37, sif = 7 r האם ספרת האחדות של sif שווה ל- num num 37 sif 7 שורה (1)-(2) (

תוכן העניינים

שעור 6

Slide 1

מבוא למדעי המחשב

PowerPoint Presentation

מבוא למדעי המחשב

Slide 1

מס' ת"ז מס' מחברת מבחן בקורס מבוא מורחב למדעי המחשב CS1001.py ביה"ס למדעי המחשב, אונ' תל אביב סמסטר א' , מועד ב, 23/3/2018 מרצים: דניאל דויטש,

מבוא למדעי המחשב

Microsoft Word - tutorial Dynamic Programming _Jun_-05.doc

מטלת מנחה (ממ"ן) 11 הקורס: חשבון אינפיניטסימלי II חומר הלימוד למטלה: יחידות 2,1 4 מספר השאלות: 7 משקל המטלה: נקודות סמסטר: ב 2007 מו

Algorithms Tirgul 1

Microsoft PowerPoint - rec3.ppt

תרגול 1

תוכנה 1 1 אביב תשע"ג תרגיל מספר 5 מערכים, מחרוזות, עיבוד טקסט ומבני בקרה הנחיות כלליות: קראו בעיון את קובץ נהלי הגשת התרגילים אשר נמצא באתר הקורס. הגש

מבחן 7002 פרטים כלליים מועד הבחינה: בכל זמן מספר השאלון: 1 משך הבחינה: 3 שעות חומר עזר בשימוש: הכל )ספרים ומחברות( המלצות: קרא המלצות לפני הבחינה ובדי

PowerPoint Presentation

הטכניון מכון טכנולוגי לישראל אלגוריתמים 1 )443432( סמסטר חורף הפקולטה למדעי המחשב תרגול 9 מסלולים קלים ביותר תרגיל APSP - 1 עד כה דנו באלגור

מתכונת עיצוב 3013

תרגול 3 - מערכים

פייתון

מהוא לתכנות ב- JAVA מעבדה 3

Microsoft Word - דוגמאות ב

úåëðä 1 - çæøä

מבוא למדעי המחשב

ex1-bash

שקופית 1

rizufim answers

תרגול מס' 7: תרגילים מתקדמים ברקורסיה

תרגיל בית מספר 1#

יוםראשון, 02 ליולי 2014 סמסטר סוף מבחן )236703( עצמים מונחה תכנות - א' מועד 2014, אביב סמסטר קמחי יחיאל ד"ר מרצה: מסינג מיטל עבדאלקאדר, כרם גלעד, ערן

מבחן בקורס מבוא מורחב למדעי המחשב, CS1001.py ביה"ס למדעי המחשב, אונ' תל אביב סמסטר א' 2019, מועד א', 27/01/2019 מרצים: פרופ' דניאל דויטש, ד"ר אמיר רוב

עבודה במתמטיקה לכיתה י' 5 יח"ל פסח תשע"ה אפריל 5105 קשה בלימודים, קל במבחנים, קל בחיים עבודה במתמטיקה לכיתה י' 5 יח"ל פסח תשע"ה יש לפתור את כל השאלות

Microsoft Word - review-sol-Prog123.doc

2013/14 אוניברסיטת חיפה מבוא למדעי מחשב, מעבדה מטרת המעבדה: לתרגל את המעבר מאלגוריתם לקוד C כמה שיותר. הוראות:.1.2 ניתן לעבוד ביחידים או בזוגות. (יש מ

תרגול מס' 7 – חזרה על MST ואלגוריתם Dijkstra

סיכום הוראות Touch touchend יקרא לפונקציה כשיסתיים המגע עם הסמארטפון. - touchmove יקרא לפונקציה במהלך תזוזת המגע עם הסמארטפון. touchstart יקרא לפונקצי

מבוא למדעי המחשב

תוכן העניינים

תוכן העניינים: פרק צמצומים ומימושים של פונקציות בוליאניות... 2 צמצומים של פונקציות באמצעות מפת קרנו:...2 שאלות:... 2 תשובות סופיות:... 4 צמצום

בחן במערכות הפעלה

Microsoft PowerPoint - lec2.ppt

Slide 1

Microsoft Word - SDAROT 806 PITRONOT.doc

<4D F736F F D20F4FAF8E5EF20EEE5F2E320E020F1EEF1E8F820E120FAF9F2E3>

Homework Dry 3

1 תבניות טקסט מהי תבנית טקסט? שימוש ב- Characters Meta שימוש ב- Expression Grouping שימוש ב- Quantifiers תת תבניות הפונקציה preg_match הפונקציה preg_m

איטרטורים: 1 תוכנה 1 סתיו תשע"ג תרגיל מספר 9 הנחיות כלליות: קראו בעיון את קובץ נהלי הגשת התרגילים אשר נמצא באתר הקורס. הגשת התרגיל תעשה במערכת ה moodl

דוגמאות שהוצגו בהרצאה 10 בקורס יסודות מערכות פתוחות דוגמה 1 דוגמאות של פונקציות ב- awk שמראות שהעברת פרמטרים של משתנים פשוטים היא by value והעברת פרמט

תרגול מס' 1

Slide 1

תמליל:

החוג למדעי המחשב אוניברסיטת חיפה מבוא למדעי המחשב סמסטר א' תשע"ג בחינת סיום, מועד ב', 20.02.2013 מרצה: ריטה אוסדצ'י מתרגלת: נעמה טוויטו מדריך מעבדה: מחמוד שריף משך המבחן: שעתיים חומר עזר: ספר של Kernighan & Ritchie הנחיות: עליכם לכתוב את התשובות על הטופס ולהגיש את כל הטופס. 1. היציאה מהכיתה במהלך הבחינה אסורה. 2. קראו היטב כל שאלה וודאו שאתם מבינים אותה לפני שתתחילו לענות עליה. 3. אם יש שאלות, פנו למרצה או למתרגלים. כתבו בכתב יד ברור וקריא. ניתן לכתוב בעיפרון. 4. ניתן לכתוב הערות בעברית, גם בגוף פונקציות C. 5. ניתן להשתמש בכול פונקציה שלמדנו בהרצאות בתוספת הצהרה והערה על 6. מטרתה. פתרונות פתרונות צריכים להיות יעילים ככל האפשר. פתרונות לא יעילים ו 7. שלא עונים על דרישות הסיבוכיות יקבלו ניקוד חלקי. אם לא נכתב אחרת, ניתן להשתמש בפונקציות עזר. 8. בהצלחה!!! שאלה 1 2 3 סה"כ ציון /30 35/ /35 100

שאלה )30 1 נק'( נתונה התכנית הבאה )n הוא מס' שלם וחיובי(: #include <stdio.h> #include <stdlib.h> int func1(int n); int func2(char* a, int i, int n); int func1(int n) char* a = (char*)malloc((n+1)*sizeof(char)); int tmp; if(a==null) exit(1); a[n] = 0; tmp = func2(a,0,n); free(a); return tmp; int func2(char* a, int i, int n) int x = 0; if(i == n) printf("%s\n",a); return 1; a[i] = '1'; x += func2(a,i+1,n); if(i==0 a[i-1]!='0') a[i] = '0'; x += func2(a,i+1,n); return x; int main() printf("%d\n",func1(7)); return 0;

n )כאן א. הסבירו במילים פשוטות מה התכנית מבצעת: התכנית מדפיסה את כל המחרוזות הבינאריות מאורך רצופים, ולבסוף מדפיסה את מספרן. 7=n( שאין בהן שני אפסים ב. מהי סיבוכיות הזמן של ההדוק ביותר. func1 כפונקציה של n? סמנו ב- x את הריבוע שליד החסם העליון O n O n 2 O 2 n O(n!) X ג. מהי סיבוכיות המקום של func1 ו- func2 כפונקציה של n? וקוראת ל- func2 (. O(n) זיכרון בגודל )מקצה O(n) :func1. n( רקורסיבית שמגיעה עד לעומק )פונק' O(n) : func2

שאלה )35 2 נק'( נתונה ההגדרה הבאה של איבר ברשימה מקושרת: typedef struct list int data; struct list* next; List; הגדירו פונקציה שחתימתה: List* setdiff(list* list1, List* list2); הפונקציה מקבלת שתי רשימות מקושרות ממוינות בסדר עולה ומוחקת מהרשימה הראשונה (list1) את האיברים שמופעים ברשימה השנייה (list2). הפונקציה מחזירה את הרשימה המעודכנת. לדוגמא: list1: 1 2 5 6 9 11 15 NULL list2: 2 4 5 6 15 NULL אחרי העדכון : list1=setdiff(list1,list2) list1: 1 9 11 NULL אין לעבור על הרשימות יותר מפעם אחד. יש לממש פונקציה אחת בלבד ללא שימוש בפונקציות עזר פרט לפונקציות מספריה של C. על הפונקציה לעמוד בדרישות סיבוכיות מקום של (1)O.

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

typedef struct list int data; struct list* next; Node; מימוש ב- C : Node* setdiff(node* list1, Node* b) Node* tmp=list1; Node* a=list1; while (a!=null && b!=null) if (a->data == b->data) if(a==list1) /* first element is removed*/ a=a->next; free(list1); list1=a; tmp=a; b=b->next; else /* remove element other than first*/ b = b->next; tmp->next=a->next; free(a); a=tmp->next; else if (a->data < b->data) /*advance the list with the smaller element*/ tmp=a; a = a->next; else b = b->next; return list1;

שאלה )35 3 נק'( נתונה ההגדרה הבאה של צמתים בעץ בינארי: typedef struct tnode *Tnodep; typedef struct tnode int content; /* content of the node */ Tnodep left,right; /* left and right children */ Tnode; int scantree(tnodep root1,tnodep root2, int d); הגדירו פונקציה שחתימתה: הפונקציה מקבלת מצביעים לשני עצים, ושלם d. יש להניח שהעצים הם מסוג עץ חיפוש בינארי מאוזן ומלא בעל n צמתים. הפונקציה תחזיר 1 אם קיימים קודקוד עם ערך x בעץ הראשון )root1( וקודקוד עם ערך y בעץ השני )root2( כך שמתקיים ש,x=y-d אחרת הפונקציה תחזיר 0. לדוגמא: עבור העצים root1 ו- root2 שבציור הבא עבור 3=d הפונקציה תחזיר 1, כי התנאי מתקיים, למשל, עבור = 5 x ו -8 = y עבור 20=d הפונקציה תחזיר 0, כי התנאים לא מתקיימים עבור אף זוג קודקודים. root2 5 root1 6 3 7 3 8 2 4 6 8 1 5 7 9 להזכירכם: עץ חיפוש בינארי הוא עץ ממויין כך שלכל קודקוד בעץ מתקיים: כל הצאצאים בתת העץ של הבן הימני הם בעלי ערך גדול יותר מערך הקודקוד וכל הצאצאים בתת העץ של הבן השמאלי הם בעלי ערך קטן יותר. על הפונקציה לעמוד בדרישות סיבוכיות זמן של.O(nlogn) הבהרות: לא ניתן להשתמש במשתנים חיצוניים או סטטיים. אסור לפונקציה להרוס את העצים שהיא מקבלת כקלט..1.2

אלגוריתם : עבור כל צומת x בעץ הראשון נחפש את x+d בעץ השני, אם הוא נמצא נחזיר 1, אחרת נבדוק את בניו של x. הסבר סיבוכיות הזמן: O(nlogn) כי עבור כל צומת בעץ הראשון, ויש n כאלה, מבוצעת פעולת חיפוש אחת בעץ השני )סיבוכיות הזמן של פעולת חיפוש בעץ בינארי מאוזן בן n צמתים היא O(logn) (.

int binary_search(tnodep root, int val) if(root==null) return 0; if(root->content==val) return 1; if(root->content>val) return binary_search(root->left,val); return binary_search(root->right,val); מימוש ב- C : int scan(tnodep root1,tnodep root2, int d) if(root1==null) return 0; if(binary_search(root2,root1->content+d)) return 1; return scan(root1->left,root2,d) scan(root1->right,root2,d);