
Introduction
This concise textbook has been primarily designed for undergraduate students as a very first course in programming.
The book requires no prior knowledge of programming nor algorithms. It provides a gentle introduction to these topics.
The contents of this book have been organized into ten chapters split over two parts, as follows:
– The first part is concerned with getting ready to program basic tasks using the modern language JavaTM. The fundamental notions of variables, expressions,assignments with type checking are first explained. We present the conditional and loop statements that allow programmers to control the instruction work flows. The concepts of functions with pass-by-value arguments and recursion are explained. We proceed by presenting arrays and data encapsulation using objects, and insist on the notion of references for the latter.
The contents of this book have been organized into ten chapters split over two parts, as follows:
– The first part is concerned with getting ready to program basic tasks using the modern language JavaTM. The fundamental notions of variables, expressions,assignments with type checking are first explained. We present the conditional and loop statements that allow programmers to control the instruction work flows. The concepts of functions with pass-by-value arguments and recursion are explained. We proceed by presenting arrays and data encapsulation using objects, and insist on the notion of references for the latter.
– The second part of the book focuses on data-structures and algorithms. We first describe the fundamental sequential and bisection search
techniques, and analyze their respective efficiency using complexity analysis. Since the effective bisection search requires sorted data,
we then explain basic iterative and recursive sorting algorithms.We follow by explaining linked lists and describe common insertion/deletion/merge
operations on them. We then introduce the concept of abstract data-structures (illustrating them with queues and stacks) and explain how to program
them in Java using the object-oriented style methods. Finally, the last chapter is an introduction to more evolved algorithmic tasks that tackle
combinatorial optimization problems.
The goal of this book is two-fold: Namely, during the first part, novice programmers progressively learn the basic concepts underlying most imperative programming languages using Java. The second part then introduces fresh pro grammers with the very basic principles of thinking the algorithmic way, and explain how to turn these algorithms into programs using the programming concepts of Java. The book progressively conveys to the reader that “programming” is in fact a complex task that consists of modeling a given problem, designing algorithms and purposely structuring its data for solving the problem, coding the algorithm into a program, and finally, testing the program.
The goal of this book is two-fold: Namely, during the first part, novice programmers progressively learn the basic concepts underlying most imperative programming languages using Java. The second part then introduces fresh pro grammers with the very basic principles of thinking the algorithmic way, and explain how to turn these algorithms into programs using the programming concepts of Java. The book progressively conveys to the reader that “programming” is in fact a complex task that consists of modeling a given problem, designing algorithms and purposely structuring its data for solving the problem, coding the algorithm into a program, and finally, testing the program.
Title : A concise and practical introduction to programming algorithms in Java
author(s) : Frank Nielsen
size : 2.8 Mb
file type : djvu
how to dowload from this website
0 on: "A concise and practical introduction to programming algorithms in Java"
If some URL not work please inform me and thanks