JavaRush /בלוג Java /Random-HE /ביקורת ספר: "מבני נתונים ואלגוריתמים של ג'אווה", רוברט לפ...

ביקורת ספר: "מבני נתונים ואלגוריתמים של ג'אווה", רוברט לפורט

פורסם בקבוצה
כוחו של כל מתכנת הוא בידע שלו. כן, גם היכולת לבצע חיפוש טוב בגוגל אינה במקום האחרון, אבל בכל זאת חייבת להיות מידה מסוימת של ידע, שעל בסיסה נוצרת דרך החשיבה של המפתח. ככל שהידע הזה מעמיק יותר, כך מתכנת יכול להמציא פתרונות מעניינים יותר. ביקורת ספר: "מבני נתונים ואלגוריתמים של ג'אווה", רוברט לפורט - 1אחד החלקים של "בסיס" כזה הם מבני נתונים ואלגוריתמים. איך אתה יכול להרחיב את הידע שלך בכיוון זה? כאופציה, מצא ספר, שהידע ממנו יהפוך לעתודה חסינת אש ובסיס להמשך לימוד. עבורי, ספר כזה היה "מבני נתונים ואלגוריתמים של ג'אווה" מאת רוברט לפורט .ביקורת ספר: "מבני נתונים ואלגוריתמים של ג'אווה", רוברט לפורט - 2

למי

הקהל של ספר זה יכול להיות מגוון רחב מאוד של אנשים, מכיוון שהוא יהיה שימושי הן עבור אלה שזה עתה שלטו בתחביר של שפת ג'אווה , והן עבור מתכנתים מתרגלים, להבנה מעמיקה יותר של התכונות של מבני נתונים ואלגוריתמים .

לגבי מה

ספר זה מוקדש ללימוד ושימוש במבני נתונים ואלגוריתמים בתכנות. זה ילמד את הקורא כיצד מבני נתונים קובעים את האופן שבו הנתונים מאורגנים בזיכרון, וכיצד אלגוריתמים מבצעים פעולות שונות על מבנים אלה. בואו נחפור קצת יותר לעומק ונראה על מה בדיוק הספר הזה:
  1. מערכים. פעולות הוספה, חיפוש ומחיקה במערכים ומערכים מסודרים מכוסות בפירוט. מדגים את הפעולה של חיפוש ליניארי ובינארי עבור מערכים מסודרים ולא מסודרים. תלמדו גם מהו תחביר O.
  2. מִיוּן. שלוש שיטות מיון פשוטות נחשבות: "מיון בועה", "מיון בחירה", "מיון הכנסה". מהספר תלמד מי מהם הכי איטי ואיזה הכי פשוט.
  3. ערימות ותורים. מבני נתונים כגון מחסנית, תור ותור עדיפות, יעילותם והטמעה בג'אווה נחשבים.
  4. רשימות מקושרות. הספר מדבר על רשימות מקושרות כפולות ודו-כיווניות, יעילותן וכיצד מתבצעות פעולות הוספה, חיפוש ומחיקה. איטרטורים ואיזה שיטות הם דורשים מכוסים גם.
  5. רקורסיות. הרקורסיות נחשבות במצבים שונים, כגון: חישוב מספרים משולשים ופקטורים, בניית אנגרמות, ביצוע חיפוש בינארי רקורסיבי, פתרון חידת מגדל האנוי, יישום מיון מיזוג, פתרון בעיית הכנאפה.
  6. מיונים לא טריוויאליים. שיטות מתקדמות יותר נחשבות: מיון מעטפת, מיון מהיר ומיון רדיקס, האלגוריתמים שלהם, יעילות.
  7. עצים בינאריים. נחשבים עצי חיפוש בינאריים מאוזנים, אופן פעולתם, פעולות ההכנסה והמחיקה שלהם, סוגים שונים של מעבר, חיפוש מינימום ומקסימום, חיפוש יורש. קוד האפמן יכוסה גם.
  8. עצים אדומים ושחורים. אנו רואים באחד הזנים היעילים ביותר של עצים מאוזנים, פעולות הסיבוב והחלפת הצבע שלהם הכרחיות לאיזון.
  9. עצים 2-3-4. עצים מסוג זה מתוארים כדוגמה לעצים מרובי נתיבים; נדונים פעולתם ויחסם עם עצי B, המשמשים לאחסון נתונים חיצוני.
  10. טבלאות חשיש. גיבוב ושיטותיו השונות מכוסות, כגון חיטוט ליניארי וריבועי, גיבוב כפול ושיטת השרשור. תוכל גם ללמוד כיצד ניתן להשתמש בגיבוב לארגון אחסון קבצים חיצוני.
  11. פירמידות. זהו סוג מיוחד של עץ המשמש ליישום יעיל של תורי עדיפות. הספר דן במנגנוני הפעולה של הכנסה, מחיקה וסידור מחדש. תלמדו גם מהי תמורה פירמידלית וכיצד ניתן ליישם אותה בג'אווה.
  12. גרפים. מוצגים גרפים משוקללים ולא משוקללים, אלגוריתמים לחיפוש בהם ואלגוריתמים המשמשים למציאת נתיבי המעבר הקצרים ביותר.
לבהירות רבה יותר, כל פרק מספק יישום משלו של מבנה הנתונים המדובר. לדוגמה, אם זו רשימה מקושרת בודדת, תינתן דוגמה למחלקה המיישמת את הפונקציונליות המתוארת. הפרק האחרון של הספר, המתבסס על הידע שנצבר מהפרקים הקודמים, מתחיל לאסוף את כל הידע לתמונה אחת. לדוגמה, תוכל ליצור מושג ברור באיזה מבנה נתונים להשתמש באיזה מצב: ביקורת ספר: "מבני נתונים ואלגוריתמים של ג'אווה", רוברט לפורט - 3יש גם תרגילים קטנים בסוף כל פרק. חלקם כרוכים בביצוע דברים עם אפליקציית הסדנה , בעוד שאחרים נותנים לך משימות קטנות ישירות בקוד.

מהן אפליקציות סדנאות

יישומי סדנה משמשים להדגמת מבנים ואלגוריתמים אלה . אפליקציות מעוצבות כישומוני Java שניתן להפעיל בדפדפן. יישומי סדנאות יוצרים דיאגרמות גרפיות המראות כיצד פועל אלגוריתם או מבנה נתונים. לדוגמה, באפליקציה אחת שנועדה להציג עמודות ממוינות בסדר עולה, בכל פעם שתלחץ על כפתור בהיסטוגרמה, יתבצע השלב הבא. במקרה זה, הערכים של המשתנים המעורבים באלגוריתם זה יוצגו כך שתוכל לראות כיצד הקוד מבוצע (מזכיר את התיאור של באגים , נכון?).

כיצד להוריד ולהתקין את Workshop

  1. אתה יכול להוריד יישומונים כאן . Рецензия на книгу: «Структуры данных и алгоритмы Java», Роберт Лафоре - 4
  2. לחץ על WorkshopApplets.ZIP והורד את הארכיון עם יישומונים.
  3. כדי להבין יישומונים, אתה יכול לקרוא את הנושא הזה ואת ההערות אליו.

היתרונות של הספר

  • קל מאוד לקריאה, דוגמאות רבות מוסברות כמעט "על האצבעות";
  • פותח את עיניך לדברים "קלאסיים" רבים, ללא שימוש בנוסחאות מתמטיות מורכבות. ובכן, כמעט בלעדיהם :)
  • למרות שהדוגמאות הן ב-Java, הפעולות המתרחשות בקוד מוסברות בפירוט רב על ידי הטקסט הבא וההערות בקוד. לכן, משתמש בכל שפת תכנות יכול לקרוא אותו, מכיוון שדוגמאות הקוד פשוטות למדי: הן נקראות כמעט כמו פסאודוקוד.

חסרונות של הספר

  • למרות ההסבר "על האצבעות", יש בו פערים. כדי להסביר את מיון המערך, המחבר מצייר תמונה של קבוצת כדורגל, אבל מיון מעטפת כמעט לא מתואר שם: לא הצלחתי להבין אותו ולקרוא על זה באינטרנט;
  • ייתכנו שגיאות הקלדה, בדרך כלל בתמונות או בטבלאות;
  • קוד מסוים די מיושן.

אנלוגים

אני ממליץ על אנלוגים של ספר זה או הבאים אחריו (למי שרוצה להמשיך ללמוד):
  • "אלגוריתמים בג'אווה" מאת רוברט סדג'וויק;
  • "אלגוריתמים: בנייה וניתוח" מאת תומס קורמן.

שורה תחתונה

לספר יש מעט חסרונות, אז הוא באמת שווה קריאה. הוא מסביר בבירור נושאים בסיסיים ובסיסיים רבים, כגון סוגים שונים, מערכים, עצים, אוספים, גרפים וכו'. מכיוון שהספר אינו קשור מאוד ל- Java , בסיס הידע שיתקבל מלימודו יהיה שימושי בשפות תכנות אחרות. חובה, חובה לקרוא - אם אתה מפתח.Рецензия на книгу: «Структуры данных и алгоритмы Java», Роберт Лафоре - 6
הערות
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION