ABA


"ניתן לייעל את התוכנית הזאת? (שפת C)"
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #14560 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 14560
הולנדי
חבר מתאריך 26.5.05
603 הודעות, דרג אמינות חבר זה
   05:37   02.02.08   
אל הפורום  
  ניתן לייעל את התוכנית הזאת? (שפת C)  
 
אוקי בעקרון השפה לא כל כך חשובה אלא פשוט הרעיון

התוכנית לוקחת מחרוזת מסויימת ומחזירה את האות שחוזרת על עצמה הכי הרבה פעמיים

כרגע התוכנית עובדת על 2n - מבלי להתייחס לאיפוס מערך העזר
יש אופציה לעבוד על יעילות גבוהה יותר?
תודה


#include<stdio.h>
char leetrs(char *,int);
void main()
{
char c="sadasdasaaaa";
int n=13;

printf("%c",leetrs(c,n));
scanf("%d",&n);
}

char leetrs(char c,int n)
{
int i,help,max,t,t2=0;
for(i=0;i<26;i++)
{
help=0;
}
for(i=0;i<n;i++)
{
t=c;
help+=1;
}

//find Max//
max=0 ;
for(i=0;i<26;i++)
{
if (max<help )
{
max=help ;
t2=i;
}
}
return (t2+97);
}

https://www.xchef.co.il | אתר
בישולים חברתי


                                שתף        
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

  האשכול     מחבר     תאריך כתיבה     מספר  
  לא הבנתי הרבה חלקים בקוד למה נועדו, סתם בזבוז של idan192 02.02.08 13:08 2
  לפי דעתי הכי פשוט בשבילך Net_Boy  02.02.08 16:12 3
     nlogn זה יותר גבוה מ n הולנדי 05.02.08 22:16 4
         אויש מצטער שהטעתי אותך , משום מה התייחסתי למיון כ log n Net_Boy  05.02.08 22:21 5

       
idan192

דרג אמינות חבר זה
   13:08   02.02.08   
אל הפורום  
  2. לא הבנתי הרבה חלקים בקוד למה נועדו, סתם בזבוז של  
בתגובה להודעה מספר 0
 
   שורות, אבל בגדול הכי מהיר שעולה לי בראש יהיה:
תיצור עם הנתון הזה מערך int בגודל 26 מאופס לאפס.
כל מספר תא יהיה הערך ה-ASCII היחסי לטבלה (a = 1, b = 2...).
כל תא שהוא קולט את המספר שלו מבצעע ++ לתא.
זו סיבוכיות n.
בסוף תבצע מיון MAX Sort או אחד בסגנון עם סיבוכיות logn ואז תדפיס או תחזיר את התא הראשון.
לסיכום, תקבל סיבוכיות n.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Net_Boy  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 1.4.02
17151 הודעות, 1 פידבק, 2 נקודות
   16:12   02.02.08   
אל הפורום  
  3. לפי דעתי הכי פשוט בשבילך  
בתגובה להודעה מספר 0
 
   מיין Quicksort - סיבוכיות nlogn

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


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
הולנדי
חבר מתאריך 26.5.05
603 הודעות, דרג אמינות חבר זה
   22:16   05.02.08   
אל הפורום  
  4. nlogn זה יותר גבוה מ n  
בתגובה להודעה מספר 3
 

https://www.xchef.co.il | אתר
בישולים חברתי


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Net_Boy  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 1.4.02
17151 הודעות, 1 פידבק, 2 נקודות
   22:21   05.02.08   
אל הפורום  
  5. אויש מצטער שהטעתי אותך , משום מה התייחסתי למיון כ log n  
בתגובה להודעה מספר 4
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

תגובה מהירה  למכתב מספר: 
 
___________________________________________________________________

___________________________________________________________________
למנהלים:  נעל | תייק בארכיון | מחק | העבר לפורום אחר | מחק תגובות | עגן אשכול
       



© כל הזכויות שמורות ל-רוטר.נט בע"מ rotter.net