یکشنبه ۹ آذر ۱۳۹۹

دنیای صفر و یک

کتاب چالش‌های برنامه‌نویسی

کتاب Programming Challenges از انتشارات معتبر Springer کتاب مفیدی برای آمادگی شرکت در مسابقات برنامه‌نویسی است که نویسندگان آن به صورت گام به گام، خلاصه و مفید، به مفاهیم و نکات مهم برنامه‌نویسی، ساختمان داده‌ها، محاسبات ریاضی و طراحی الگوریتم‌ها اشاره داشته و با طرح مسائل متفاوت از هر موضوع، خواننده را به چالش حل مسأله کشیده‌اند.

در این کتاب برای هر موضوع مورد بحث تعدادی سوال از سایت UVa انتخاب و مطرح شده است. به این ترتیب خواننده علاوه بر آشنایی با مفاهیم مختلف، با نحوه طراحی سوال از آن موضوع نیز مواجه می‌شود. نویسندگان کتاب در مقدمه به این نکته اشاره داشته‌اند که در انتخاب سوال‌ها علاوه بر مرتبط بودن موضوع، جنبه سرگرمی و جذابیت نیز تا حد ممکن رعایت شده است. این کتاب را می‌توانید از این لینک دانلود کنید. فهرست کامل مطالب این کتاب به شرح زیر است:

  1. Getting Started
  • Getting Started With the Judge
  • Choosing Your Weapon
  • Programming Hints
  • Elementary Data Types
  • About the Problems
  • Problems, Hints and Notes
  1. Data Structures
  • Elementary Data Structures
  • Object Libraries
  • Program Design Example: Going to War
  • Hitting the Deck
  • String Input/Output
  • Winning the War
  • Testing and Debugging
  • Problems, Hints and Notes
  1. Strings
  • Character Codes
  • Representing Strings
  • Program Design Example: Corporate Renamings
  • Searching for Patterns
  • Manipulating Strings
  • Completing the Merger
  • String Library Functions
  • Problems, Hints and Notes
  1. Sorting
  • Sorting Applications
  • Sorting Algorithms
  • Program Design Example: Rating the Field
  • Sorting Library Functions
  • Rating the Field
  • Problems, Hints and Notes
  1. Arithmetic and Algebra
  • Machine Arithmetic
  • High-Precision Integers
  • High-Precision Arithmetic
  • Numerical Bases and Conversion
  • Real Numbers
  • Algebra
  • Logarithms
  • Real Mathematical Libraries
  • Problems, Hints and Notes
  1. Combinatorics
  • Basic Counting Techniques
  • Recurrence Relations
  • Binomial Coefficients
  • Other Counting Sequences
  • Recursion and Induction
  • Problems, Hints and Notes
  1. Number Theory
  • Prime Numbers
  • Divisibility
  • Modular Arithmetic
  • Congruences
  • Number Theoretic Libraries
  • Problems, Hints and Notes
  1. Backtracking
  • Backtracking
  • Constructing All Subsets
  • Constructing All Permutations
  • Program Design Example: The Eight-Queens Problem
  • Pruning Search
  • Problems, Hints and Notes
  1. Graph Traversal
  • Flavors of Graphs
  • Data Structures for Graphs
  • Graph Traversal: Breadth-First
  • Graph Traversal: Depth-First
  • Topological Sorting
  • Problems and Hints
  1. Graph Algorithms
  • Graph Theory
  • Minimum Spanning Trees
  • Shortest Paths
  • Network Flows and Bipartite Matching
  • Problems and Hints
  1. Dynamic Programming
  • Don’t Be Greedy
  • Edit Distance
  • Reconstructing the Path
  • Varieties of Edit Distance
  • Program Design Example: Elevator Optimization
  • Problems, Hints and Notes
  1. Grids
  • Rectilinear Grids
  • Triangular and Hexagonal Grids
  • Program Design Example: Plate Weight
  • Circle Packings
  • Longitude and Latitude
  • Problems and Hints
  1. Geometry
  • Lines
  • Triangles and Trigonometry
  • Circles
  • Program Design Example: Faster Than a Speeding Bullet
  • Trigonometric Function Libraries
  • Problems and Hints
  1. Computational Geometry
  • Line Segments and Intersection
  • Polygons and Angle Computations
  • Convex Hulls
  • Triangulation: Algorithms and Related Problems
  • Algorithms on Grids
  • Geometry Libraries
  • Problems and Hints
  • Appendix
  • The ACM International Collegiate Programming Contest
  • International Olympiad in Informatics
  • com
  • Go to Graduate School!
  • Problem Credits
برچسب‌ها:, , , , اشتراک‌گذاری این نوشته در تلگرام

نوشته‌های مرتبط:

درباره نویسنده
| تعداد ارسال‌ها: 77

مهندس «عرفان زیده‌سرایی» مدرک کارشناسی خود را در رشته مهندسی کامپیوتر از «دانشگاه آزاد اسلامی واحد لاهیجان» در سال 1390 اخذ کرده‌اند و در سال 1394 نیز موفق به اخذ مدرک کارشناسی ارشد با درجه عالی در رشته مهندسی کامپیوتر از «دانشگاه آزاد اسلامی واحد خرم‌آباد» شده‌اند. ایشان به صورت تخصصی به ترجمه و تالیف کتاب‌های کامپیوتری مشغول می‌باشند و در زمینه‌های پردازش تصاویر دیجیتال، الگوریتم‌های رمزنگاری، الگوریتم‌های موازی و تجزیه و تحلیل سیستم‌های نرم‌افزاری فعالیت می‌کنند. خوانندگان محترم می‌توانند از طریق آدرس پست الکترونیکی «info@BinaryWorld.ir» با ایشان در ارتباط باشند.

دیدگاه‌ها

0 دیدگاه

نوشتن دیدگاه