Advertisement
Guest User

Untitled

a guest
Oct 28th, 2016
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.73 KB | None | 0 0
  1. public class String{// דניאל חיים יב 3
  2.        public static boolean isGood(String st){// מקבל מחרוזת של st
  3.               Stack<Character>s=new Stack<Character>();// יצירה של מחסנית חדשה מסוג Character כדי לקלוט את האותיות בהמשך
  4.                    string s1=st.subString(0,st.charAt("*");// string s1 => מפרק את הסטרינג שלנו ל2 חלקים, בין אפס (האות הראשונה) לקארקטר.את אשר תחזיר לנו את התו כוכבית במקום הרצון בין שני החלקים.
  5.                    string s2=st.subString(st.charAt("*")+1);// string s2=> מפרקת קודם כל שוב את הסטרינגים שלנו ל2 חלקים, אך הפעם מקארקטר.את שבמקום הרצון שלנו, כוכבית, ועד להמשך שהוא ועוד 1. הועוד אחד מסמן לנו את התו שאחרי הכוכבית.
  6.               if(s1.length!=s2.length)// בודק אם אורך התווים בסטרינג הראשון לא שווה לאורך התווים בסטרינג השני - שהרי אנחנו רוצים שהוא יהיה סימטרי כלומר שווה, ולכן אם הוא לא יהיה שווה הוא יחזיר FALSE
  7.                           return false;// => החזיר FALSE
  8.                 for(int i=0; i<s1.length; i++)// הלולאה תרוץ מאיי שבמקום האפס ועד למקום האיי קטן מאורך הסטרינג הראשון, ויעלה באחד כל פעם.
  9.                           s.push(s1[i]);// לאחר הלולאה, המחסנית תכניס כל פעם אות אחרת כשאיי עולה באחד לפי הסדר, מהסטרינג הראשון שלנו.
  10.                     for(int i=0; i<s2.length; i++)// לולאה נוספת - אשר תרוץ מאיי שבמקום האפס ועד למקום האיי קטן מאורך הסטרינג הראשון, ויעלה שוב באחד כל פעם. רק שלאחר מכן היא תבדוק אם המחסנית שהכנסנו אליה את הסטרינג הראשון במקום האיי, תעיף לבחוץ את מה שהכנסנו ותבדוק אם היא לא שווה לסטרינג השני במקום האיי, ואם הוא לא תהיה שווה, הפעולה תחזיר שקר.
  11.                            if(s.pop()!=(s2[i]));// כנאמר למעלה, כמו שאמרתי הפעם בודקת אם מה שהכנסנו הסטרינג הראשון במקום האיי, יעוף לבחוץ והוא לא יהיה שווה לסטרינג השני במקום האיי, הפעולה תחזיר שקר ולאחר מכן אמת.
  12.                   return false;// הפעולה תחזיר שקר
  13.               retrun true;// הפעולה תחזיר אמת
  14.        }
  15. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement