זה לא ב C, הC שלי חלודה ואני טס עוד שעה בערך 
אבל העקרון זה יצירת רשומה, שקוראים לה נגיד where
הרשומה מכילה מערך משתנים שקוראים לו eaxct (מספר שלם)
ומשתנה שקרואים לו now, now מאותחל ל 1 (גם מספר שלם) (המקום הראשון במערך)יוצרים מערך של where נגיד נקרא לו ar2 שגודלו 100
נקרא למערך הראשון (שמכיל את הציונים), ar שגודלו N
נעבור אחד אחד ב ar, נגיד הערך של הציונים מספר N/2 (בהנחה שהוא שלם,
אני עובד אחד, אחד אז אני לא מניח זאת בתוכנית, רק ברמת העיקרון...)
נגיד והציון במקום הזה הוא 50, אז אני מכניס ב ar2 במקום החמישים
בexact במקום now את המיקום של המספר במערך ar. אני מעלה את now ב1.
אני ממשיך ככה עד שאני מגיע ל תא N במערך ar, עושה אותו דבר לגביו.
אחרי זה אני מכניס בar לפי הסדר את הציונים, מ 0 עד 100, ע"י כך שאני
מריץ לולאה על ar2, נגיד עכשיו זה במקום ה0 (הרשומה שמייצגת את הציונים 0) אז אני אשים את 0 now פעמים במערך. וכך הלאה, עד מאה.
הסיבוכיות היא N...
אלגרותים כללי זה נכתב בהנחה שרוצים לשמור את המיקומים המקוריים (למקרה
שזה רשומה שכוללת גם את השם) אם לא, אז פשוט אפשר לעשות את מערך ar2
מערך באורך 100 של מספרים שלמים, לאתחל אותו לאפס, ולהגדיל ערך כל תא בו לפי הציון הנוכחי. ככה, נאבדים ה"שמות" אבל נוצרת אותה תוצאה.
בברכה, תום.