לכתוב פונקציה מתוך שמקבלת STRING ובודקת שלכל סוגר שנפתח יש סוגר שסוגר אותו. לדוגמא הביטוי ({[()]}) תקין ו הביטוי {([))} לא תקין.
תשובות
הוסף תשובה
|
לצפיה בתשובות
פברואר 2022
הרעיון בפתרון זה להשתמש במחסנית
פברואר 2022
או בcounter
מרץ 2022
להשתמש במחסנית , להכניס את כל התווים למחסנית , ואז לשלוף אותם אחד אחד ולבדוק כל פעם האם הערך שנשלף מהמחסנית שווה לתו הנוכחי
מרץ 2022
counter זה נחמד - אך לא ניתן יהא לזהות האם הסוגריים אכן תקינים מבחינת הסדר שלהם אלא רק כמותית.
שכן הביטוי הבא:
({)} אינוי תקין - אך שימוש בCounter-ים יחשיבו כתקין.
שאלות מה זה תכנות מונחה עצמים. למה צריך multi-threadingְ. מה ההבדל בין interface ל- abstract object. מה זה singleton. מתי משתמשים בו.
תשובות
הוסף תשובה
|
לצפיה בתשובות
פברואר 2022
תכנות מונחה עצמים - העיקרון המנחה הוא שאת התוכנה שלנו צריך לפרק לגורמים וכל גורם עם תחום אחריות משלו ומתנהג כעצם נפרד, והתוכנה יכולה לשחק בעצמים האלו.
מולטי ט'רדינג - לביצוע פעולות בו זמנית, ניצול יותר טוב של המעבד.
ממשק (interface) - יוצר התחייבות מול המשתמש, הוא צריך להגדיר את התוכן של הפונקציות שמוצהרות בממשק. אפשר לרדת מכמה ממשקים. בד"כ משתמשים לפונקציות שוליות יותר, או לא העיקריות לפחות.
אובייקט אבסטרקי - יכול להכיל את התוכן של הפונקציות (לא חייב) אותן יירש המשתמש (פונקציה אחרת). אפשר לרשת רק מאובייקט אבסטרקטי אחד, וכל מה שנירש יילקח. אם נרצה לשנות משהו צריך לדרוס (override).
סינגלטון - קלאס שיש רק אחד ממנו, אפשר ליצור רק אחד כזה בהרצה. יעיל כשצריך בעיקר לתאם פעולות בין אובייקטים שונים במערכת.
אינטל הוא תאגיד בינלאומי אמריקאי, אשר ידוע בעיקר כמתכנן ויצרן של מיקרו־מעבדים (החל משנת 1971) ומתמחה במעגלים משולבים. כמו כן, אינטל מייצרת כרטיסי רשת, מערכות שבבים ללוחות אם, והתקנים אחרים.