Elettrotecnica, Elettronica, Informatica
Il mondo dell'elettronica e dell'Informatica per esperti curata dagli autori delle università più prestigiose.

ADVANCED PROGRAMMING AND PROBLEMSOLVING STRATEGIES IN C. PART II: ALGORITHMS AND DATA STRUCTURES II ed 

Online: 42,50 €  
Quantità:  
This book presents computing technologies for university students
enrolled in advanced programming classes such as "Algorithms and programming", and software development professionals. It will give the reader an informative, challenging ad entertaining introduction to use C language to solve complex problems. Those problems will include advance algorithms and complex data structures. The book will concentrate on complete working programs, somehow presenting and contrasting several possible solutions. This word assumes a generalpurpose knowledge of the C language such
as the one usually learned during basic programming courses delivered at the first year of the curricula in computer engineering and computer science. The book main highlights are the following:
 Extended coverage of pointers, dynamic arrays and matrices, linkedlists, and other basic data structures.  Abstract data types (ADTs).  Recursions and recursive algorithms. Each topic is covered by a rich collection of partial and complete examples, and about $100$ fully implemented and debugged programs. The focus is on good software engineering, and on program clarity, such that the reader is guided to learn properties of algorithms and data structures as fast as possible. The focus is on good software engineering, and on program clarity,
such that the reader is guided to learn properties of algorithm and data structures. The content of each chapter is the following:  Chapter 1 presents a revising set of exercise to recall basic C construct and problem solving strategies. This is essentially a very brief summary of Volume I by the Nocco et al. (written in Italian). Code and programming style follow the same book.  Chapter 2 covers dynamic memory allocation. Pointers, operators on pointers, dynamic arrays, and dynamic matrices are covered into details.  Chapter 3 presents dynamically allocated lists. Simple, ordered, bilinked, circular, and listoflists are described with several figures and code segments.  Chapter 4 describes basic concepts for recursion and it presents simple recursive programs.  Chapter 5 includes standard recursive problems such as mergesort, quicksort, the eight queen problems, etc. It also describes combinatorics problems, such as: The multiplication principle, simple arrangements, arrangements with repetitions, simple permutation, permutation with repetitions, simple combination, combinations with repetitions, and the powerset.  Chapter 6 describe how to apply recursion to some hardtosolve problems.  Chapter 7 describes all required concepts to write programs ``in the large'', i.e., multifile programs, with personalized header files. It also illustrates the main concepts of Abstract Data Type (ADTs) and their use in C programming.  Chapter 8 illustrates several ADTbased problems, such as the stack (based on an array or a dynamic list), queues, etc. The book is also covered by online material, as all source codes are available on the editor web page. 