0
Your cart

Your cart is empty

Browse All Departments
Price
  • R50 - R100 (1)
  • R100 - R250 (248)
  • R250 - R500 (3,223)
  • R500+ (11,559)
  • -
Status
Format
Author / Contributor
Publisher

Books > Computing & IT > Computer programming > Programming languages > General

CS For All - An Introduction to Computer Science Using Python (Paperback): Christine Alvarado, Zachary Dodds, Geoff Kuenning,... CS For All - An Introduction to Computer Science Using Python (Paperback)
Christine Alvarado, Zachary Dodds, Geoff Kuenning, Ran Libeskind-Hadas
R1,479 Discovery Miles 14 790 Ships in 9 - 17 working days

A unique approach to "Intro CS." In a nutshell, the authors of this book's objective is to provide an introduction to computer science as an intellectually rich and vibrant field rather than focusing exclusively on computer programming. While programming is certainly an important and pervasive element of their approach, they emphasize concepts and problem-solving over syntax and programming language features. This book is a companion to the course "CS for All" developed at Harvey Mudd College and subsequently adopted at a variety of colleges and universities. At Mudd, this course is taken by almost every first-year student - irrespective of the student's ultimate major - as part of the college's core curriculum. The offering is also taken by many students at the Claremont Colleges, including students majoring in the humanities, social sciences, and the arts. Thus, it serves as a first computing course for students regardless of their major. This book is intended to be used with the substantial resources that we have developed for the course. These resources include complete lecture slides, a rich collection of weekly assignments, some accompanying software, documentation, and papers that have been published about the course. The authors have deliberately kept this book relatively short and have endeavored to make it fun and readable. The content of this book is an accurate reflection of the content of the course rather than an intimidating encyclopedic tome that can't possibly be covered in a single semester. The book has been written in the belief that a student can read all of it comfortably as the course proceeds.

Research and Evidence in Software Engineering - From Empirical Studies to Open Source Artifacts (Hardcover): Varun Gupta,... Research and Evidence in Software Engineering - From Empirical Studies to Open Source Artifacts (Hardcover)
Varun Gupta, Chetna Gupta
R3,948 Discovery Miles 39 480 Ships in 10 - 15 working days

Research and Evidence in Software Engineering: From Empirical Studies to Open Source Artifacts introduces advanced software engineering to software engineers, scientists, postdoctoral researchers, academicians, software consultants, management executives, doctoral students, and advanced level postgraduate computer science students. This book contains research articles addressing numerous software engineering research challenges associated with various software development-related activities, including programming, testing, measurements, human factors (social software engineering), specification, quality, program analysis, software project management, and more. It provides relevant theoretical frameworks, empirical research findings, and evaluated solutions addressing the research challenges associated with the above-mentioned software engineering activities. To foster collaboration among the software engineering research community, this book also reports datasets acquired systematically through scientific methods and related to various software engineering aspects that are valuable to the research community. These datasets will allow other researchers to use them in their research, thus improving the quality of overall research. The knowledge disseminated by the research studies contained in the book will hopefully motivate other researchers to further innovation in the way software development happens in real practice.

C Interfaces and Implementations - Techniques for Creating Reusable Software (Paperback): David Hanson C Interfaces and Implementations - Techniques for Creating Reusable Software (Paperback)
David Hanson
R1,162 R1,058 Discovery Miles 10 580 Save R104 (9%) Ships in 9 - 17 working days

Every programmer and software project manager must master the art of creating reusable software modules; they are the building blocks of large, reliable applications. Unlike some modern object-oriented languages, C provides little linguistic support or motivation for creating reusable application programming interfaces (APIs). While most C programmers use APIs and the libraries that implement them in almost every application they write, relatively few programmers create and disseminate new, widely applicable APIs. C Interfaces and Implementations shows how to create reusable APIs using interface-based design, a language-independent methodology that separates interfaces from their implementations. This methodology is explained by example. The author describes in detail 24 interfaces and their implementations, providing the reader with a thorough understanding of this design approach.

Features of C Interfaces and Implementations:

  • Concise interface descriptions that comprise a reference manual for programmers interested in using the interfaces.
  • A guided tour of the code that implements each chapter's interface tp help those modifying or extending an interface or designing related interfaces.
  • In-depth focus on "algorithm engineering: " how to package data structures and related algorithms into reusable modules.
  • Source code for 24 APIs and 8 sample applications is examined, with each presented as a "literate program" in which a thorough explanation is interleaved with the source code.
  • Rarely documented C programming tricks-of-the-trade.
  • Convenient access to all source code in the book via the World Wide Web at http: //www.cs.princeton.edu/software/cii/

0201498413B04062001
Discrete Mathematical Structures - A Succinct Foundation (Paperback): Hemen Dutta, B V Senthil Kumar Discrete Mathematical Structures - A Succinct Foundation (Paperback)
Hemen Dutta, B V Senthil Kumar
R1,501 Discovery Miles 15 010 Ships in 10 - 15 working days

This book contains fundamental concepts on discrete mathematical structures in an easy to understand style so that the reader can grasp the contents and explanation easily. The concepts of discrete mathematical structures have application to computer science, engineering and information technology including in coding techniques, switching circuits, pointers and linked allocation, error corrections, as well as in data networking, Chemistry, Biology and many other scientific areas. The book is for undergraduate and graduate levels learners and educators associated with various courses and progammes in Mathematics, Computer Science, Engineering and Information Technology. The book should serve as a text and reference guide to many undergraduate and graduate programmes offered by many institutions including colleges and universities. Readers will find solved examples and end of chapter exercises to enhance reader comprehension. Features Offers comprehensive coverage of basic ideas of Logic, Mathematical Induction, Graph Theory, Algebraic Structures and Lattices and Boolean Algebra Provides end of chapter solved examples and practice problems Delivers materials on valid arguments and rules of inference with illustrations Focuses on algebraic structures to enable the reader to work with discrete structures

The Logic of Commands (Paperback): Nicholas Rescher The Logic of Commands (Paperback)
Nicholas Rescher
R1,063 Discovery Miles 10 630 Ships in 10 - 15 working days

Originally published in 1966. Professor Rescher's aim is to develop a "logic of commands" in exactly the same general way which standard logic has already developed a "logic of truth-functional statement compounds" or a "logic of quantifiers". The object is to present a tolerably accurate and precise account of the logically relevant facets of a command, to study the nature of "inference" in reasonings involving commands, and above all to establish a viable concept of validity in command inference, so that the logical relationships among commands can be studied with something of the rigour to which one is accustomed in other branches of logic.

Programming Games for Atari 2600 (Hardcover): Oscar Toledo Gutierrez Programming Games for Atari 2600 (Hardcover)
Oscar Toledo Gutierrez
R982 Discovery Miles 9 820 Ships in 18 - 22 working days
C++ Template Metaprogramming in Practice - A Deep Learning Framework (Hardcover): Li Wei C++ Template Metaprogramming in Practice - A Deep Learning Framework (Hardcover)
Li Wei
R3,078 Discovery Miles 30 780 Ships in 10 - 15 working days

Using the implementation of a deep learning framework as an example, C++ Template Metaprogramming in Practice: A Deep Learning Framework explains the application of metaprogramming in a relatively large project and emphasizes ways to optimize systems performance. The book is suitable for developers with a basic knowledge of C++. Developers familiar with mainstream deep learning frameworks can also refer to this book to compare the differences between the deep learning framework implemented with metaprogramming and compile-time computing with deep learning frameworks using object-oriented methods. Consisting of eight chapters, the book starts with two chapters discussing basic techniques of metaprogramming and compile-time computing. The rest of the book's chapters focus on the practical application of metaprogramming in a deep learning framework. It examines rich types and systems, expression templates, and writing complex meta-functions, as well as such topics as: Heterogeneous dictionaries and policy templates An introduction to deep learning Type system and basic data types Operations and expression templates Basic layers Composite and recurrent layers Evaluation and its optimization Metaprogramming can construct flexible and efficient code. For C++ developers who are familiar with object-oriented programming, the main difficulty in learning and mastering C++ metaprogramming is establishing the thinking mode of functional programming. The meta-programming approach involved at compile time is functional, which means that the intermediate results of the construction cannot be changed, and the impact may be greater than expected. This book enables C++ programmers to develop a functional mindset and metaprogramming skills. The book also discusses the development cost and use cost of metaprogramming and provides workarounds for minimizing these costs.

Anyone Can Code - The Art and Science of Logical Creativity (Hardcover): Ali Arya Anyone Can Code - The Art and Science of Logical Creativity (Hardcover)
Ali Arya
R4,602 Discovery Miles 46 020 Ships in 10 - 15 working days

Anyone Can Code: The Art and Science of Logical Creativity introduces computer programming as a way of problem-solving through logical thinking. It uses the notion of modularization as a central lens through which we can make sense of many software concepts. This book takes the reader through fundamental concepts in programming by illustrating them in three different and distinct languages: C/C++, Python, and Javascript. Key features: Focuses on problem-solving and algorithmic thinking instead of programming functions, syntax, and libraries; Includes engaging examples, including video games and visual effects; Provides exercises and reflective questions. This book gives beginner and intermediate learners a strong understanding of what they are doing so that they can do it better and with any other tool or language that they may end up using later.

Mathematics and Programming for Machine Learning with R - From the Ground Up (Hardcover): William Claster Mathematics and Programming for Machine Learning with R - From the Ground Up (Hardcover)
William Claster
R3,114 Discovery Miles 31 140 Ships in 10 - 15 working days

Based on the author's experience in teaching data science for more than 10 years, Mathematics and Programming for Machine Learning with R: From the Ground Up reveals how machine learning algorithms do their magic and explains how these algorithms can be implemented in code. It is designed to provide readers with an understanding of the reasoning behind machine learning algorithms as well as how to program them. Written for novice programmers, the book progresses step-by-step, providing the coding skills needed to implement machine learning algorithms in R. The book begins with simple implementations and fundamental concepts of logic, sets, and probability before moving to the coverage of powerful deep learning algorithms. The first eight chapters deal with probability-based machine learning algorithms, and the last eight chapters deal with machine learning based on artificial neural networks. The first half of the book does not require mathematical sophistication, although familiarity with probability and statistics would be helpful. The second half assumes the reader is familiar with at least one semester of calculus. The text guides novice R programmers through algorithms and their application and along the way; the reader gains programming confidence in tackling advanced R programming challenges. Highlights of the book include: More than 400 exercises A strong emphasis on improving programming skills and guiding beginners to the implementation of full-fledged algorithms Coverage of fundamental computer and mathematical concepts including logic, sets, and probability In-depth explanations of machine learning algorithms

Statistical Mechanics - Fundamentals and Modern Applications (Hardcover): R.E. Wilde Statistical Mechanics - Fundamentals and Modern Applications (Hardcover)
R.E. Wilde
R4,548 Discovery Miles 45 480 Ships in 18 - 22 working days

A valuable learning tool for students and an indispensable resource for professional scientists and engineers

Several outstanding features make this book a superior introduction to modern statistical mechanics: It is the only intermediate-level text offering comprehensive coverage of both basic statistical mechanics and modern topics such as molecular dynamic methods, renormalization theory, chaos, polymer chain folding, oscillating chemical reactions, and cellular automata. It is also the only text written at this level to address both equilibrium and nonequilibrium statistical mechanics. Finally, students and professionals alike will appreciate such aids to comprehension as detailed derivations for most equations, more than 100 chapter-end exercises, and 15 computer programs written in FORTRAN that illustrate many of the concepts covered in the text.

Statistical Mechanics begins with a refresher course in the essentials of modern statistical mechanics which, on its own, can serve as a handy pocket guide to basic definitions and formulas. Part II is devoted to equilibrium statistical mechanics. Readers will find in-depth coverage of phase transitions, critical phenomena, liquids, molecular dynamics, Monte Carlo techniques, polymers, and more. Part III focuses on nonequilibrium statistical mechanics and progresses in a logical manner from near-equilibrium systems, for which linear responses can be used, to far-from-equilibrium systems requiring nonlinear differential equations.

Learning Primary Programming with Scratch (Home Learning Book Years 5-6) (Paperback): Phil Bagge Learning Primary Programming with Scratch (Home Learning Book Years 5-6) (Paperback)
Phil Bagge
R245 R226 Discovery Miles 2 260 Save R19 (8%) Ships in 5 - 10 working days
Object-Oriented Design Choices (Hardcover): Adair Dingle Object-Oriented Design Choices (Hardcover)
Adair Dingle
R4,090 Discovery Miles 40 900 Ships in 10 - 15 working days

Do modern programming languages, IDEs, and libraries make coding easy? Maybe, but coding is not design. Large-scale or expensive apps clearly require evaluation of design choices. Still, software design directly impacts code reuse and longevity even for small-scale apps with limited overhead. This text evaluates and contrasts common object-oriented designs. A given problem may have many solutions. A developer may employ different design techniques - composition, inheritance, dependency injection, delegation, etc. - to solve a particular problem. A skilled developer can determine the costs and benefits of different design responses, even amid competing concerns. A responsible developer documents design choices as a contract with the client, delineating external and internal responsibilities. To promote effective software design, this book examines contractual, object-oriented designs for immediate and sustained use as well as code reuse. The intent of identifying design variants is to recognize and manage conflicting goals such as short versus long-term utility, stability versus flexibility, and storage versus computation. Many examples are given to evaluate and contrast different solutions and to compare C# and C++ effects. No one has a crystal ball; however, deliberate design promotes software longevity. With the prominence of legacy OO code, a clear understanding of different object-oriented designs is essential. Design questions abound. Is code reuse better with inheritance or composition? Should composition rely on complete encapsulation? Design choices impact flexibility, efficiency, stability, longevity, and reuse, yet compilers do not enforce design and syntax does not necessarily illustrate design. Through deliberate design, or redesign when refactoring, developers construct sustainable, efficient code.

Explorations in Computing - An Introduction to Computer Science and Python Programming (Paperback): John S. Conery Explorations in Computing - An Introduction to Computer Science and Python Programming (Paperback)
John S. Conery
R1,551 Discovery Miles 15 510 Ships in 10 - 15 working days

An Active Learning Approach to Teaching the Main Ideas in Computing Explorations in Computing: An Introduction to Computer Science and Python Programming teaches computer science students how to use programming skills to explore fundamental concepts and computational approaches to solving problems. Tbook gives beginning students an introduction to computer science concepts and computer programming. Designed for CS0 and CS1 courses, it is very well suited for alternative lecture styles, including flipped classrooms. Prepares Students for Advanced Work in Computer ScienceA revised and updated version of the author's Explorations in Computing: An Introduction to Computer Science, this text incorporates two major differences. It now uses Python, instead of Ruby, as the lab software so that students can seamlessly transition from introductory projects to more advanced studies in later courses. The book also introduces Python programming, providing students with sufficient programming skills so they can implement their own programs. Practical, Step-by-Step ProjectsThe interactive lab projects in each chapter allow students to examine important ideas in computer science, particularly how algorithms offer computational solutions to problems. Students can type expressions, view results, and run experiments that help them understand the concepts in a hands-on way. Web ResourcesThe Python software modules for each lab project are available on the author's website. The modules include data files and sample Python code that students can copy and modify. In addition, the site provides a lab manual of installation instructions and tips for editing programs and running commands in a terminal emulator.

Learning Primary Programming with Scratch (Home Learning Book Years 3-4) (Paperback): Phil Bagge Learning Primary Programming with Scratch (Home Learning Book Years 3-4) (Paperback)
Phil Bagge
R245 R226 Discovery Miles 2 260 Save R19 (8%) Ships in 5 - 10 working days
Introduction to the Boost C++ Libraries; Volume II - Advanced Libraries (Hardcover): Robert Demming, Daniel J. Duffy Introduction to the Boost C++ Libraries; Volume II - Advanced Libraries (Hardcover)
Robert Demming, Daniel J. Duffy
R1,497 Discovery Miles 14 970 Ships in 10 - 15 working days

This book is the follow-up of the Boost Volume I book and it has been written for software developers who use Boost C++ libraries to create flexible applications. We discuss approximately 20 advanced libraries that can be classified into the following major categories: Mathematics: special functions, statistical distributions, interval arithmetic and matrix algebra. Special data structures: date and time, circular buffer, UUID, dynamic bitsets, pool memory. TCP and UDP portable network programming using the software interface. Interprocess communication and shared memory programming models. Three chapters on graphs, graph algorithms and their implementation in Boost. The focus is hands-on and each library is discussed in detail and numerous working examples are given to get the reader up to speed as soon as possible. Each library is described in a step-by-step fashion and you can use the corresponding code as a basis for more advanced applications. These libraries are the ideal basis for new applications. We shall use them in Volume III of the current series when we discuss applications to engineering, science and computational finance. About the Authors Robert Demming is software designer, developer and trainer and he has been involved with software projects in the areas of optical technology, process control, CAD and order processing systems since 1993. He has a BSc degree in technical computerscience from Amsterdam Hogeschool. Daniel J. Duffy is founder of Datasim Education BV and has been working with C++ and its applications since 1989 and with software development since 1979. He is designer, algorithm builder and trainer. He has a PhD in numerical analysis from Trinity College, Dublin. One of the projects that he is involved in is applying the Boost libraries to computational finance."

Metaheuristic Computation with MATLAB (R) (Hardcover): Erik Cuevas, Alma Rodriguez Metaheuristic Computation with MATLAB (R) (Hardcover)
Erik Cuevas, Alma Rodriguez
R3,517 Discovery Miles 35 170 Ships in 10 - 15 working days

Metaheuristic algorithms are considered as generic optimization tools that can solve very complex problems characterized by having very large search spaces. Metaheuristic methods reduce the effective size of the search space through the use of effective search strategies. Book Features: Provides a unified view of the most popular metaheuristic methods currently in use Includes the necessary concepts to enable readers to implement and modify already known metaheuristic methods to solve problems Covers design aspects and implementation in MATLAB (R) Contains numerous examples of problems and solutions that demonstrate the power of these methods of optimization The material has been written from a teaching perspective and, for this reason, this book is primarily intended for undergraduate and postgraduate students of artificial intelligence, metaheuristic methods, and/or evolutionary computation. The objective is to bridge the gap between metaheuristic techniques and complex optimization problems that profit from the convenient properties of metaheuristic approaches. Therefore, engineer practitioners who are not familiar with metaheuristic computation will appreciate that the techniques discussed are beyond simple theoretical tools, since they have been adapted to solve significant problems that commonly arise in such areas.

C/TCP-IP - The Embedded Protocol Stack and the Renesas Sh7216 (Hardcover): Christian L. Gar C/TCP-IP - The Embedded Protocol Stack and the Renesas Sh7216 (Hardcover)
Christian L. Gar
R2,165 Discovery Miles 21 650 Ships in 18 - 22 working days
Temporal Logic and State Systems (Hardcover, 2008 ed.): Fred Kroeger, Stephan Merz Temporal Logic and State Systems (Hardcover, 2008 ed.)
Fred Kroeger, Stephan Merz
R2,076 Discovery Miles 20 760 Ships in 10 - 15 working days

Temporal logic has developed over the last 30 years into a powerful formal setting for the specification and verification of state-based systems. Based on university lectures given by the authors, this book is a comprehensive, concise, uniform, up-to-date presentation of the theory and applications of linear and branching time temporal logic; TLA (Temporal Logic of Actions); automata theoretical connections; model checking; and related theories.

All theoretical details and numerous application examples are elaborated carefully and with full formal rigor, and the book will serve as a basic source and reference for lecturers, graduate students and researchers.

Mathematics and Programming for Machine Learning with R - From the Ground Up (Paperback): William Claster Mathematics and Programming for Machine Learning with R - From the Ground Up (Paperback)
William Claster
R1,598 Discovery Miles 15 980 Ships in 10 - 15 working days

Based on the author's experience in teaching data science for more than 10 years, Mathematics and Programming for Machine Learning with R: From the Ground Up reveals how machine learning algorithms do their magic and explains how these algorithms can be implemented in code. It is designed to provide readers with an understanding of the reasoning behind machine learning algorithms as well as how to program them. Written for novice programmers, the book progresses step-by-step, providing the coding skills needed to implement machine learning algorithms in R. The book begins with simple implementations and fundamental concepts of logic, sets, and probability before moving to the coverage of powerful deep learning algorithms. The first eight chapters deal with probability-based machine learning algorithms, and the last eight chapters deal with machine learning based on artificial neural networks. The first half of the book does not require mathematical sophistication, although familiarity with probability and statistics would be helpful. The second half assumes the reader is familiar with at least one semester of calculus. The text guides novice R programmers through algorithms and their application and along the way; the reader gains programming confidence in tackling advanced R programming challenges. Highlights of the book include: More than 400 exercises A strong emphasis on improving programming skills and guiding beginners to the implementation of full-fledged algorithms Coverage of fundamental computer and mathematical concepts including logic, sets, and probability In-depth explanations of machine learning algorithms

Discovering Computer Science - Interdisciplinary Problems, Principles, and Python Programming (Hardcover, 2nd edition): Jessen... Discovering Computer Science - Interdisciplinary Problems, Principles, and Python Programming (Hardcover, 2nd edition)
Jessen Havill
R5,245 Discovery Miles 52 450 Ships in 10 - 15 working days

Provides complete update and organization of the previous books, with some material moving online; Includes new problems, projects, and exercises; Includes interactive coding resources to accompany the book, including examples in the text, exercises, projects, and refection questions.

Exercises in Programming Style (Hardcover, 2nd edition): Cristina Videira Lopes Exercises in Programming Style (Hardcover, 2nd edition)
Cristina Videira Lopes
R2,907 Discovery Miles 29 070 Ships in 10 - 15 working days

The first edition of Exercises in Programming Style was honored as an ACM Notable Book and praised as "The best programming book of the decade." This new edition retains the same presentation but has been upgraded to Python 3, and there is a new section on neural network styles. Using a simple computational task (term frequency) to illustrate different programming styles, Exercises in Programming Style helps readers understand the various ways of writing programs and designing systems. It is designed to be used in conjunction with code provided on an online repository. The book complements and explains the raw code in a way that is accessible to anyone who regularly practices the art of programming. The book can also be used in advanced programming courses in computer science and software engineering programs. The book contains 40 different styles for writing the term frequency task. The styles are grouped into ten categories: historical, basic, function composition, objects and object interactions, reflection and metaprogramming, adversity, data-centric, concurrency, interactivity, and neural networks. The author states the constraints in each style and explains the example programs. Each chapter first presents the constraints of the style, next shows an example program, and then gives a detailed explanation of the code. Most chapters also have sections focusing on the use of the style in systems design as well as sections describing the historical context in which the programming style emerged.

Readings from Python Fundamentals (Paperback, New edition): Cengage Cengage Readings from Python Fundamentals (Paperback, New edition)
Cengage Cengage
R1,245 R1,156 Discovery Miles 11 560 Save R89 (7%) Ships in 10 - 15 working days
Programming for Hybrid Multi/Manycore MPP Systems (Paperback): John Levesque, Aaron Vose Programming for Hybrid Multi/Manycore MPP Systems (Paperback)
John Levesque, Aaron Vose
R1,381 Discovery Miles 13 810 Ships in 10 - 15 working days

"Ask not what your compiler can do for you, ask what you can do for your compiler." --John Levesque, Director of Cray's Supercomputing Centers of Excellence The next decade of computationally intense computing lies with more powerful multi/manycore nodes where processors share a large memory space. These nodes will be the building block for systems that range from a single node workstation up to systems approaching the exaflop regime. The node itself will consist of 10's to 100's of MIMD (multiple instruction, multiple data) processing units with SIMD (single instruction, multiple data) parallel instructions. Since a standard, affordable memory architecture will not be able to supply the bandwidth required by these cores, new memory organizations will be introduced. These new node architectures will represent a significant challenge to application developers. Programming for Hybrid Multi/Manycore MPP Systems attempts to briefly describe the current state-of-the-art in programming these systems, and proposes an approach for developing a performance-portable application that can effectively utilize all of these systems from a single application. The book starts with a strategy for optimizing an application for multi/manycore architectures. It then looks at the three typical architectures, covering their advantages and disadvantages. The next section of the book explores the other important component of the target-the compiler. The compiler will ultimately convert the input language to executable code on the target, and the book explores how to make the compiler do what we want. The book then talks about gathering runtime statistics from running the application on the important problem sets previously discussed. How best to utilize available memory bandwidth and virtualization is covered next, along with hybridization of a program. The last part of the book includes several major applications, and examines future hardware advancements and how the application developer may prepare for those advancements.

Data Structure Practice - for Collegiate Programming Contests and Education (Paperback): Yonghui Wu, Jian-De Wang Data Structure Practice - for Collegiate Programming Contests and Education (Paperback)
Yonghui Wu, Jian-De Wang
R1,419 Discovery Miles 14 190 Ships in 10 - 15 working days

Combining knowledge with strategies, Data Structure Practice for Collegiate Programming Contests and Education presents the first comprehensive book on data structure in programming contests. This book is designed for training collegiate programming contest teams in the nuances of data structure and for helping college students in computer-related majors to gain deeper understanding of data structure. Based on successful experiences in many world-level contests, the book includes 204 typical problems and detailed analyses selected from the ACM International Collegiate Programming Contest and other major programming contests since 1990. It is divided into four sections that focus on: Fundamental programming skills Experiments for linear lists Experiments for trees Experiments for graphs Each chapter contains a set of problems and includes hints. The book also provides test data for most problems as well as sources and IDs for online judgments that help with improving programming skills. Introducing a multi-options model and considerations of context, Data Structure Practice for Collegiate Programming Contests and Education encourages students to think creatively in solving programming problems. By taking readers through practical contest problems from analysis to implementation, it provides a complete source for enhancing understanding and polishing skills in programming.

Introduction to Software Engineering (Paperback, 2nd edition): Ronald J. Leach Introduction to Software Engineering (Paperback, 2nd edition)
Ronald J. Leach
R1,489 Discovery Miles 14 890 Ships in 10 - 15 working days

Practical Guidance on the Efficient Development of High-Quality Software Introduction to Software Engineering, Second Edition equips students with the fundamentals to prepare them for satisfying careers as software engineers regardless of future changes in the field, even if the changes are unpredictable or disruptive in nature. Retaining the same organization as its predecessor, this second edition adds considerable material on open source and agile development models. The text helps students understand software development techniques and processes at a reasonably sophisticated level. Students acquire practical experience through team software projects. Throughout much of the book, a relatively large project is used to teach about the requirements, design, and coding of software. In addition, a continuing case study of an agile software development project offers a complete picture of how a successful agile project can work. The book covers each major phase of the software development life cycle, from developing software requirements to software maintenance. It also discusses project management and explains how to read software engineering literature. Three appendices describe software patents, command-line arguments, and flowcharts.

Free Delivery
Pinterest Twitter Facebook Google+
You may like...
Wicca Guided Journal - A Witch's Toolkit…
Lisa Chamberlain Hardcover R613 Discovery Miles 6 130
Gypsy Sorcery and Fortune Telling…
Charles Godfrey Leland Hardcover R770 Discovery Miles 7 700
Wicca for Beginners - The ultimate guide…
Stephanie Mills Hardcover R551 R505 Discovery Miles 5 050
Witches and Warlocks of New York…
Lisa Lamonica Paperback R510 R391 Discovery Miles 3 910
Practical Magic for Beginners…
Maggie Haseman Hardcover R590 R544 Discovery Miles 5 440
Candle Magic for Beginners - Spells for…
Mystic Dylan Hardcover R554 R518 Discovery Miles 5 180
Runes for Beginners
Lisa Chamberlain Hardcover R591 Discovery Miles 5 910
Wicca Tree Magic - A Wiccan's Guide and…
Lisa Chamberlain Hardcover R592 Discovery Miles 5 920
Tarot for Beginners - A Guide to Psychic…
Lisa Chamberlain Hardcover R592 Discovery Miles 5 920
Yule - The Ultimate Guide to the Winter…
Mari Silva Hardcover R627 R566 Discovery Miles 5 660

 

Partners