קאָמפּיוטערספּראָגראַממינג

ז'אבא-ערייז פון סטרינגס. סאָרטינג אַ מענגע אין ז'אבא. די צוויי-דימענשאַנאַל מענגע פון ז'אבא

אין פּראָגראַממינג פיר, עס זענען אַ פּלאַץ פון פאַרשידענע שטעלט און טייפּס פון דאַטן וואס די סיסטעם קענען זיין מאַניפּיאַלייטיד און מיט וואָס די פּראָגראַמיסט קענען צולייגן צו פּראָצעס אינפֿאָרמאַציע.

דאַטע טייפּס אין פּראָגראַממינג שפּראַכן

עס איז אַ ינטאַגראַל טייל פון רובֿ פּראָגראַממינג שפּראַכן, וואָס באשרייבט די גרייס און טשאַראַקטעריסטיקס פון דאַטן סטאָרד אין אַ ספּעציפיש זיקאָרן אָרט, וואָס ינשורז ריכטיק אָפּעראַציע פון די פּראָגראַם אין די פּראָצעס פון ימפּלאַמענטיישאַן דורך אַ פּריסקרייבד אָפּעראַציע.

למשל, איינער פון די פונדאַמענטאַל דאַטע טייפּס זענען ינטאַדזשער וועריאַבאַלז. זיי קענען זיין ביידע געחתמעט און וויצע ווערסאַ, ווי דער נאָמען זיך שוין גיט אינפֿאָרמאַציע אויף די תּוכן פון אַזאַ אַ צעל.

אין דערצו צו די ינטאַדזשער וועריאַבאַלז, עס זענען אַנאַלאָגועס פון Floating-פונט נומערן וואָס זענען געניצט צו פאָרשטעלן פאַקטיש קוואַנטאַטיז. צום סוף, די אַזוי-גערופֿן פּרימיטיוו דאַטע טייפּס זענען שטריקל און כאַראַקטער וועריאַבאַלז און פּוינטערז. אַלע צוזאַמען עס איז אַ ייסאַלייטאַד שפּראַך אַפּאַראַט.

דאַטן סטראַקטשערז

העכער אָרגאַניזאַציע מדרגה פּראָגראַממינג איז באטראכט צו זיין די פאַרבאַנד פון עטלעכע פּרימיטיוו טיפּ דאַטן וניץ אין אַ מער קאָמפּליצירט ביניען. די מערסט פּראָסט איז די אַזוי גערופֿן ז'אבא-ערייז אַרייַננעמען קאַמפּאַזאַט טייפּס. איר קענען אויך קלייַבן רשימות, טופּלעס, סטאַקס און קיוז.

דער הויפּט חילוק פון ערייז איז אַז זיי צושטעלן Random צוטריט צו זייַן עלעמענטן. אָבער, די שוועריקייט ליגט אין דעם פאַקט אַז די גרייס זאָל זיין מעגלעך צו אַקיעראַטלי אָנווייַזן די יניטיאַליזאַטיאָן לבֿנה ביניען. דעם כיסאָרן איז ילימאַנייטאַד אין אַ מער קאָמפּליצירט דאַטע טייפּס, למשל, אין די רשימות. אַזאַ סיסטעמס האָבן די פיייקייַט צו דינאַמיקאַללי יקספּאַנד מיט די דערצו פון נייַ עלעמענטן, אָבער צוטריט צו די דאַטע אין זיי נעמט מער צייַט.

אין רובֿ מאָדערן פּראָגראַממינג שפּראַכן, אַלע די סטראַקטשערז זענען פאָרשטעלן און שפּיל אַ קריטיש ראָלע אין די פונקטיאָנינג פון ביידע אַפּלאַקיישאַנז און די יקאָוסיסטאַם זיך. און ז'אבא - איז קיין ויסנעם.

די ז'אבא פּראָגראַממינג שפּראַך. הויפּט אַפּאַראַט

דזשאַוואַ איז אַ שטארק טייפּט פּראָגראַממינג שפּראַך ביטעקאָדע אַז ראַנז ין אַ ווירטואַל מאַשין אַז אַלאַוז איר צו דורכפירן אַפּעריישאַנז און באַקומען די זעלבע רעזולטאַט ראַגאַרדלאַס פון קאָמפּיוטער אַרקאַטעקטשער און אַפּערייטינג סיסטעמס.

די לעצט מעלדונג פון די ז'אבא שפּראַך האט אַכט פּרימיטיוו טייפּס: בוליאַן בוליאַן, ינטאַדזשער ביטע, ינטעגער, קורץ, לאַנג, טייפּס פון Floating-פונט נומערן, רעפּריזענטיד דורך לאָזנ שווימען און טאָפּל און כאַראַקטער טשאַר.

ז'אבא-מענגע איז אַ זאַמלונג פון איין טיפּ פון דאַטן ליגן אין די זיקאָרן פון יעדער אנדערער און בעת אַ סיקוואַנס נומער (אינדעקס) דורך וואָס די פּראָגראַמיסט אָדער די סיסטעם קענען צוטריט די יחיד זאכן סטאָרד אין די מענגע. נומבערינג סטאַרץ מיט די אינדעקס נול (דער ערשטער עלעמענט) און איז ינקרעמענטעד פֿאַר יעדער סאַבסאַקוואַנט איינער. אין דער זעלביקער ז'אבא-מענגע גיט Random צוטריט צו דאַטן - באַניצער קאָד קענען צוטריט קיין עלעמענט פון די מענגע, ראַגאַרדלאַס פון זייַן אָרט ין דער סטרוקטור.

אַבדזשעקס

דו זאלסט נישט פאַרגעסן אַז ז'אבא - איז בפֿרט אַ כייפעץ-אָריענטיד פּראָגראַממינג שפּראַך. דעריבער, די יסודות זענען אַ ינטאַגראַל טייל פון די זיקאָרן מאָדעל. די פּיקיוליעראַטי פון דעם טיפּ פון סיסטעם קענען זיין גערופֿן אַז-די ז'אבא ערייז קענען קראָם אַבדזשעקס אין דער זעלביקער וועג ווי זיי האַלטן די פּרימיטיוו דאַטע טייפּס. די מערסט פּראָסט ונטערטעניק אין די שפּראַך זענען סטרינגס. זיי פאָרשטעלן די כאַראַקטער שטעלט, אָרגאַניזירט אין אַ וניפיעד און ונטשאַנגעאַבלע זכּרון.

דזשאַוואַ איז אַ מענגע פון סטרינגס אָרדערד שטעלן פון פּוינטערז צו אנדערע זיקאָרן געביטן אין יעדער פון וואָס די געזוכט כייפעץ איז סטאָרד. די required שטעלן פון אותיות דער באַניצער איז, דעריבער, פון אַ ווייַט אָרט אין דער ווירטואַל מאַשין ס זיקאָרן און אַרבעט מיט עס ומדירעקט.

צוויי-דימענשאַנאַל ערייז (מייטריסיז)

אַזאַ אַ דערשיינונג, ווי אַ מאַטריץ, איז אַ צוויי-דימענשאַנאַל מענגע פון די ז'אבא-אַבדזשעקס אָדער פּרימיטיוועס, אָרגאַניזירן זיי אויף אַ "נומער פון די זייַל." דאס דאַטן סטרוקטור איז מאל דיסקרייבד ווי אַ "מענגע פון ערייז". דעם איז רעכט צו דעם פאַקט אַז יעדער רודערן אָדער זייַל זאכן זענען אין קלאָר ז'אבא-דימענשאַנאַל מענגע, און זייער שטעלן איז אַ מאַטריץ.

אין די צוויי-דימענשאַנאַל עמבאַדימאַנט, יעדער פון די וועקטערז זאל האָבן זייַן אייגן לענג פאַרשידענע פֿון די מנוחה. ווען רעפעררינג צו אַ איין עלעמענט פון די מענגע ניצן צוויי אינדעקס צו אָנווייַזן די געבעטן זיקאָרן אָרט. ערשטער - דאָס איז די שורה נומער, וואָס איז דער געוואלט כייפעץ. די רגע אינדעקס - איז די זייַל נומער, אָדער די סיריאַל נומער פון די עלעמענט אין דער וועקטאָר. ינדעקסינג יסודות ין די צוויי-דימענשאַנאַל סטרוקטור סטאַרץ מיט נול, ווי אין די פאַל פון איינער-דימענשאַנאַל ערייז. דעריבער, צו אַדרעס די לעצטע עלעמענט פון די מענגע לענג ען אותיות אינדעקס וועט ווערן געניצט [ן-1].

סאָרט זאכן

די מערסט פּראָסט פּראָבלעם ווען ארבעטן מיט ערייז איז דווקא דער סאָרט. דעם נישטיק בייַ ערשטער בליק, די אַרבעט ווערט פיל מער קאָמפּליצירט ווי די נומער פון עלעמענטן ין אַ וועקטאָר אָדער מאַטריץ.

עס זענען פילע פאַרשידענע אַלגערידאַמז פֿאַר סאָרטינג יסודות אין אַ געגעבן ביניען - מעטאַד בלאָז סאָרטינג ברירה מוסטער ינסערשאַן אָדער Fusion אופֿן. אַלע מעטהאָדס אַנדערש אין גיכקייַט פון די אַרבעט און די סומע פון זיקאָרן required פֿאַר סטאָרינג ווייַטער דאַטן און צייַטווייַליק רעזולטאַטן בעשאַס ינטערמידייט אַפּעריישאַנז.

עטלעכע אַלגערידאַמז זאל האָבן פאַרשידענע אָפּטימאַל פאַרהעלטעניש דיפּענדינג אויף די ינפּוט דאַטן שטעלן. אין ז'אבא מענגע סאָרטינג זאל ווערן געטאן דורך מיטל פון אַ נאָרמאַל העלפער קלאַס ערייז, וואָס האט אַ סטאַטיק אופֿן סאָרט, סאָרטינג יסודות אין אַסענדינג אופֿן ניצן אַ פעסט מוסטערונג. אָבער, די אַלגערידאַם איז אַנסטייבאַל, און זייַן דורכפירונג צייַט קען אַנדערש אַפֿילו אין די פּראַסעסינג פון ערייז פון גלייַך לענג. דעם איז באקאנט ווי די fastest סאָרטינג פֿאַר אָרדערד גרויס Random רשימות. פּראָוגראַמערז זענען אויך בנימצא אַלע די געלט פֿאַר די מעקייַעם פון קיין אנדערע סאָרטינג אַלגערידאַם אין לויט מיט די פּאַראַמעטערס פון די פּראָבלעם און רעקווירעמענץ צו דער רעזולטאַט.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 yi.birmiss.com. Theme powered by WordPress.