סודוקו פותר ב c

Sudoku Solver ב C הוא תוכנית לינוקס מבוסס קונסולה, שנכתב בשפה C, כי פותר פאזלים Doku Su באמצעות לוגיקה דדוקטיבית.
הורד עכשיו

סודוקו פותר ב c דירוג וסיכום

פרסומת

  • Rating:
  • רישיון:
  • GPL
  • מחיר:
  • FREE
  • שם המפרסם:
  • Bill DuPree
  • אתר האינטרנט של המוציא לאור:
  • http://www.techfinesse.com/sshutout/sshutout.html

סודוקו פותר ב c תגים


סודוקו פותר ב c תיאור

Sudoku Solver ב C הוא תוכנית לינוקס מבוסס קונסולה, שנכתב בשפה C, כי פותר פאזלים Doku Su באמצעות לוגיקה דדוקטיבית. סודוקו Solver ב- C היא תוכנית מבוססת לינוקס המסוף, כתובה בשפת C, שפותרת סו Doku פאזלים באמצעות היגיון דדוקטיבי. זה רק יפנה ניסוי וטעייה והכחשות גישות על מיצוי moves.Puzzles דדוקטיבית שלה חייב להיות מגוון 9x9 הרגיל באמצעות התווים (ASCII) 1 עד 9 עבור הסימנים הפאזל. פאזלים יש להגיש כמו 81 מחרוזות תווים אשר, כאשר הוא נקרא משמאל לימין ימלא רשת סודוקו 9x9 משמאל לימין ומלמעלה כלפי מטה לפי. במפרט חידה, לדמויות 1 - 9 לייצג את גיבנס פאזל או רמזים. כל תו שאינו ריק והשני מייצג אלגוריתם לפתרון הפאזל פתורה cell.The הוא גדל בבית. אני לא ללוות כל הטכניקות הרגילות מהספרות, למשל: דונלד נות של "קישורי ריקוד." במקום התגלגלתי משלי מאפס כאתגר אישי. ככזה, ביצועיו אפשר להאשים רק על עבדכם הנאמן. ובכל זאת, אני מרגיש שזה די מהר. ב- Linux 333 MHz Pentium II תיבה זה פותר חידות כוח בינוני טיפוסיות כ 800 מייקריו שניים או על 1200 חידות לשנייה, פחות או יותר. על XP Athlon 3000 זה פותר כ 6600 חידות לכל שניות. (פתרון זמן תלויה מידת הקושי, כך YMMV.) תיאור של אלגוריתם: האלגוריתם פאזל בתחילה מניחה כל תא פתורה יכול להניח כל ערך אפשרי. לאחר מכן הוא משתמש המיקום של גיבנס כדי לחדד את האפשרויות העומדות לרשות כל תא. אני קורא לזה סימון phase.After סימון משלים, האלגוריתם מכן מחפש תאים סינגלטון עם ערכים, בשל המגבלות החלות על ידי שורה, טור, או באזור 3x3, ניתן להניח רק ערך אחד אפשרי. לאחר התאים הללו מוקצים ערכים, מחזיר האלגוריתם לשלב סימון כדי להחיל שינויים אלו הפתרונות המועמדים הנותרים. סימון / סינגלטון שלבים חלופי עד או לא יותר שינויים מתרחשים, או את הפאזל נפתרת. אני קורא את הסימון / לולאת חיסול סינגלטון הפותר פשוט כי אחוז גדול של מקרים זה פותר את החידה. אם החלק הפותר פשוט של האלגוריתם אינו מייצר פתרון, אז יותר כללים דדוקטיבית מתקדמים הם applied.I've מיושם שני כללים נוספים כחלק פותר החידה דדוקטיבי. היא הראשונה חיסול משנה שבה בשורה / עמודה / אזור נסרק במשך מספר X של תאים עם מספר X של פתרונות מועמד התאמה. אם תת קבוצות כאלה (או tuples) נמצאות בשורה, עמודה, או באזור, אז ערכי המועמדים מן המשנה עלולים להתבטל מכול תאים פתור האחרים בתוך השורה, עמודה, או באזור, respectively.The הבא דדוקטיבי הכלל בוחן כול באזור מחפש ערכים מועמדים כי ליישר את עצמם באופן בלעדי יחד שורה או עמודה אחת, כלומר וקטור. אם נמצאים הערכים מועמד כזה, אז הם עלולים להתבטל מן מחוץ לתאים של האזור כי הם חלק בשורה מיושר או column.Note שכל אחד הכללים דדוקטיבית מתקדמים וקורא את כל הכללים שקדמו, לפי הסדר, אם הכלל מתקדמים כי יש שינוי התבצע ב חידה markup.Finally, אם לא יימצא פתרון לאחר החלת כל הכללים דדוקטיבית איטרטיבי, אז אנחנו מתחילים בניסוי וטעייה באמצעות רקורסיה עבור backtracking. עותק עובד נוצר מן הפאזל שלנו, ושימוש זה להעתיק את התא הראשון עם המספר הקטן ביותר של פתרונות מועמד נבחר. אחד הערכים פתרונות מוקצה תא, ואת האלגוריתם פותר נקרא באמצעות העותק הזה כנקודת ההתחלה שלה. בסופו של דבר, גם פתרון, או למבוי סתום הוא reached.If נגיע למבוי סתום, את unwinds רקורסיה והפתרון במשפט הבא הוא ניסה. אם יימצא פתרון (בכל נקודה) ערכי לפתרון מתווספים לרשימה. שוב, כל עוד אנו בוחנים את כל האפשרויות, רקורסיה unwinds כך שהמשפט הבא עלול להיות ניסיון. זה בדרך זו כי אנו למנות פאזלים עם solutions.Note המרובה שזה בהחלט אפשרי כדי להוסיף לרשימה של כללים דדוקטיבית מיושמים. הטכניקות המכונות "X-Wing" ו "דג חרב" עולות במוחי. מצד השני, הוספת כללים נוספים אלו, ככל הנראה, להאט את הפותר ידי הוספת עומס החישובים תוך הפקת תוצאות מעט מאוד. ראיתי את החוק של תפוקה שולית פוחתת אפילו חלק מהכללים הקיימים, למשל: ב חיסול משנה אני מסתכל רק על שניים לשלושה תת מוערך כי לוקח את זה רחוק יותר, כי בניו של performance.What מושפל במהדורה זו: · Markup ותקנון הערכה כבר-בחשבון מחדש יסודי ויעילות · המנוע הפותר כבר ארוז. כמודול אובייקט לשימוש חוזר. · שיטת הניקוד פאזל שופרה, וכן באג הסתעפות מוקדם הנגרם תוקנה.


סודוקו פותר ב c תוכנה קשורה

Mekhangar

Mekhangar הוא אוסף של כלים ליצירה, עריכה וניהול יחידות עבור Battletech, Sci-Fi Bookgame עבור 2 שחקנים. ...

182

הורד