7 תשובות
שואל השאלה:
פליז תעזרו
פליז תעזרו
אנונימית
תעתיקי את כל האיברים למערך , רוצי עליו בלולאת for .
אם יש לך מחסנית כזאת מהמספרים האלה:
1
1
2
1
אז תעבירי למערך [1,1,2,1]
עכשיו תתחילי לרוץ על המערך בלולאת for.
עכשיו עבור כל איטרציה שלך בלולאה את צריכה לחשוב בעצם איך לספור את הרצף ?
דרך אפשרית היא לעשות תנאי כזה :
אם התא במיקום i שווה לתא במערך במיקום i+1 את סופרת עם קאונטר את מספר הפעמים שהוא מופיע וגם תדאגי שיהיה משתנה j שיהיה שווה ל i כל פעם שאת נכנסת לתוך התנאי שבעצם אומר , שאת כרגע סופרת רצף ואת רוצה לשמור על המיקום של האיבר . חשוב שתדאגי שאת רצה על אורך המערך פחות אחת כדי שלא תהיי לך שגיאת חריגה .
תעשי תנאי נוסף שבעצם יעשה השוואה עם קאונטרים שונים , למשל קאונטר הרגיל שאת סופרת איתו וקאונטר מקסימלי .
עכשיו תעשי כזה דבר
אם counter > maxcoutner אז בתוך התנאי
maxcounter=counter
maxindex = j
counter=0 .
מקס אינדקס אישמור על האינדקס של האיבר שמופיע הכי הרבה פעמים ברצף .
תצאי מהלולאה תחזירי
את תא המערך במיקום maxindex.
וזה האלגוריתם ועכשיו לדוגמא :
בודקת אם 1 שווה לערך הבא שלו (שזה 1)
אם כן תמשיכי לספור ותשמרי על המיקום במשתנה j.
מגיעה ל 2 התנאי לא מתקיים .
בודקת תנאי נוסף אם קאונטר שלך גדול ממקס קאונטר אם כן
תעדכני את הערך של מאקס קאונטר שהוא כרגע 1 , יצא שלא .
עוברת לתא הבא כרגע את מסתכלת על 2 הוא לא שווה לערך הבא אז את לא נכנסת ממשיכה וכו ובסוף יצא לך שלא היית צריכה להכנס לתנאי כי לא קיים עוד רצף נוסף לכן את תחזירי בסוף את את המספר אחת שהוא בעל הרצף הכי ארוך .
אם יש לך מחסנית כזאת מהמספרים האלה:
1
1
2
1
אז תעבירי למערך [1,1,2,1]
עכשיו תתחילי לרוץ על המערך בלולאת for.
עכשיו עבור כל איטרציה שלך בלולאה את צריכה לחשוב בעצם איך לספור את הרצף ?
דרך אפשרית היא לעשות תנאי כזה :
אם התא במיקום i שווה לתא במערך במיקום i+1 את סופרת עם קאונטר את מספר הפעמים שהוא מופיע וגם תדאגי שיהיה משתנה j שיהיה שווה ל i כל פעם שאת נכנסת לתוך התנאי שבעצם אומר , שאת כרגע סופרת רצף ואת רוצה לשמור על המיקום של האיבר . חשוב שתדאגי שאת רצה על אורך המערך פחות אחת כדי שלא תהיי לך שגיאת חריגה .
תעשי תנאי נוסף שבעצם יעשה השוואה עם קאונטרים שונים , למשל קאונטר הרגיל שאת סופרת איתו וקאונטר מקסימלי .
עכשיו תעשי כזה דבר
אם counter > maxcoutner אז בתוך התנאי
maxcounter=counter
maxindex = j
counter=0 .
מקס אינדקס אישמור על האינדקס של האיבר שמופיע הכי הרבה פעמים ברצף .
תצאי מהלולאה תחזירי
את תא המערך במיקום maxindex.
וזה האלגוריתם ועכשיו לדוגמא :
בודקת אם 1 שווה לערך הבא שלו (שזה 1)
אם כן תמשיכי לספור ותשמרי על המיקום במשתנה j.
מגיעה ל 2 התנאי לא מתקיים .
בודקת תנאי נוסף אם קאונטר שלך גדול ממקס קאונטר אם כן
תעדכני את הערך של מאקס קאונטר שהוא כרגע 1 , יצא שלא .
עוברת לתא הבא כרגע את מסתכלת על 2 הוא לא שווה לערך הבא אז את לא נכנסת ממשיכה וכו ובסוף יצא לך שלא היית צריכה להכנס לתנאי כי לא קיים עוד רצף נוסף לכן את תחזירי בסוף את את המספר אחת שהוא בעל הרצף הכי ארוך .
עכשיו גם אם נביא דוגמא כזאת :
1
1
2
2
2
3
3
3
3
התשובה עדין תהיה 3 , הדגמה נוספת על האלגוריתם :
בודקת עם הערך 1 שווה לערכים הבאים תכלס הקאונטר שלך יספר כפעם אחת והערך שלו יהיה 1
maxcounter נוכחי זה 1
ואינדקס של הרצף הכי גדול זה 0 .
שוב פעם רצה בודקת יוצא ש 2 יופיע יותר ותכלס בקאונטר יוצא 2
בודקת מי גדול יותר 2 או מקס קאונטר מחליפה ביניהם וככה שוב פעם את מגיעה ל 3 עדיין יצא לך ש 3 נספר הרבה יותר פעמיים ברצף .
1
1
2
2
2
3
3
3
3
התשובה עדין תהיה 3 , הדגמה נוספת על האלגוריתם :
בודקת עם הערך 1 שווה לערכים הבאים תכלס הקאונטר שלך יספר כפעם אחת והערך שלו יהיה 1
maxcounter נוכחי זה 1
ואינדקס של הרצף הכי גדול זה 0 .
שוב פעם רצה בודקת יוצא ש 2 יופיע יותר ותכלס בקאונטר יוצא 2
בודקת מי גדול יותר 2 או מקס קאונטר מחליפה ביניהם וככה שוב פעם את מגיעה ל 3 עדיין יצא לך ש 3 נספר הרבה יותר פעמיים ברצף .
שואל השאלה:
תודה רבה. אבל הייתי מעדיפה שלא היית עונה בשבת... (רק מציינת)
תודה רבה. אבל הייתי מעדיפה שלא היית עונה בשבת... (רק מציינת)
אנונימית
אקסודיה הוא מלך המלאכים ומותר לו לענות גם בכניסת שבת וגם במוצאי שבת
לידיעתך האתר פועל 24/7 ואני לא מכיר אותך (אנונימית) ולא עשיתי את זה ממקום של זלזול או פגיעה באמונה שלך , רק בא ממקום לעזור שיצא (כן אני חנון משועמם) שזה בסופ"ש , וזהו :)
שואל השאלה:
אני יודעת, בגלל זה אמרתי שרק מציינת. אני לא מטיפה לך מוסר, זו פשוט הייתה ההעדפה שלי (ולא יכלת לדעת אותה זו לא באשמתך).
צודק. בלי נדר פעם הבאה ארשום את זה בתיאור השאלה.
אני יודעת, בגלל זה אמרתי שרק מציינת. אני לא מטיפה לך מוסר, זו פשוט הייתה ההעדפה שלי (ולא יכלת לדעת אותה זו לא באשמתך).
צודק. בלי נדר פעם הבאה ארשום את זה בתיאור השאלה.
אנונימית