Search results for "Data Structures and Algorithms in Java"
Items we need to order for you

R 1,527.00


R 1,254.00


Algorithms and Order
This volume contains the texts of the principal survey papers presented at ALGORITHMS -and ORDER, held· at Ottawa, Canada from June 1 to June 12, 1987. The conference was supported by grants from the N.A.T.O. Advanced Study Institute programme, the University of Ottawa, and the Natural Sciences and Engineering Research Council of Canada. We are grateful for this considerable support. Over fifty years ago, the Symposium on Lattice Theory, in Charlottesville, U.S.A., proclaimed the vitality of ordered sets. Only twenty years later the Symposium on Partially Ordered Sets and Lattice Theory, held at Monterey, U.S.A., had solved many of the problems that had been originally posed. In 1981, the Symposium on Ordered Sets held at Banff, Canada, continued this tradition. It was marked by a landmark volume containing twenty-three articles on almost all current topics in the theory of ordered sets and its applications. Three years after, Graphs and Orders, also held at Banff, Canada, aimed to document the role of graphs in the theory of ordered sets and its applications. Because of its special place in the landscape of the mathematical sciences order is especially sensitive to new trends and developments. Today, the most important current in the theory and application of order springs from theoretical computer seience. Two themes of computer science lead the way. The first is data structure. Order is common to data structures.
R 12,231.54

R 611.00


Algorithms and Discrete Applied Mathematics
This book constitutes the proceedings of the 4th International Conference on Algorithms and Discrete Applied Mathematics, CALDAM 2018, held in Guwahati, India, in February 2018. The 23 papers presented in this volume were carefully reviewed and selected from 68 submissions. They focus on topics related to efficient algorithms and data structures, their analysis (both theoretical and experimental). The mathematical problems arising thereof, and new applications of discrete mathematics, advances in existing applications and development of new tools for discrete mathematics.
R 2,176.81


Advanced Data Structures
Advanced data structures is a core course in Computer Science which most graduate program in Computer Science, Computer Science and Engineering, and other allied engineering disciplines, offer during the first year or first semester of the curriculum. The objective of this course is to enable students to have the much-needed foundation for advanced technical skill, leading to better problem-solving in their respective disciplines. Although the course is running in almost all the technical universities for decades, major changes in the syllabus have been observed due to the recent paradigm shift of computation which is more focused on huge data and internet-based technologies. Majority of the institute has been redefined their course content of advanced data structure to fit the current need and course material heavily relies on research papers because of nonavailability of the redefined text book advanced data structure. To the best of our knowledge well-known textbook on advanced data structure provides only partial coverage of the syllabus. The book offers comprehensive coverage of the most essential topics, including: Part I details advancements on basic data structures, viz., cuckoo hashing, skip list, tango tree and Fibonacci heaps and index files. Part II details data structures of different evolving data domains like special data structures, temporal data structures, external memory data structures, distributed and streaming data structures. Part III elucidates the applications of these data structures on different areas of computer science viz, network, www, DBMS, cryptography, graphics to name a few. The concepts and techniques behind each data structure and their applications have been explained. Every chapter includes a variety of Illustrative Problems pertaining to the data structure(s) detailed, a summary of the technical content of the chapter and a list of Review Questions, to reinforce the comprehension of the concepts. The book could be used both as an introductory or an advanced-level textbook for the advanced undergraduate, graduate and research programmes which offer advanced data structures as a core or an elective course. While the book is primarily meant to serve as a course material for use in the classroom, it could be used as a starting point for the beginner researcher of a specific domain.
R 9,313.06

Algorithms and Computation
This book constitutes the refereed proceedings of the 25th International Symposium on Algorithms and Computation, ISAAC 2014, held in Jeonju, Korea, in December 2014. The 60 revised full papers presented together with 2 invited talks were carefully reviewed and selected from 171 submissions for inclusion in the book. The focus of the volume in on the following topics: computational geometry, combinatorial optimization, graph algorithms: enumeration, matching and assignment, data structures and algorithms, fixed-parameter tractable algorithms, scheduling algorithms, computational complexity, computational complexity, approximation algorithms, graph theory and algorithms, online and approximation algorithms, and network and scheduling algorithms.
R 4,354.20

Data Structures and Algorithms with the C++ STL
Explore the C++ STL with practical guidance on vectors, algorithms, and custom types for intermediate developers, enriched by real-world examples.Key FeaturesMaster the std::vector and understand why it should be your default container of choiceUnderstand each STL algorithm and its practical applicationsGain insights into advanced topics such as exception guarantees and thread safetyPurchase of the print or Kindle book includes a free PDF eBookBook DescriptionWhile the Standard Template Library (STL) offers a rich set of tools for data structures and algorithms, navigating its intricacies can be daunting for intermediate C++ developers without expert guidance. This book offers a thorough exploration of the STL’s components, covering fundamental data structures, advanced algorithms, and concurrency features.Starting with an in-depth analysis of the std::vector, this book highlights its pivotal role in the STL, progressing toward building your proficiency in utilizing vectors, managing memory, and leveraging iterators. The book then advances to STL’s data structures, including sequence containers, associative containers, and unordered containers, simplifying the concepts of container adaptors and views to enhance your knowledge of modern STL programming. Shifting the focus to STL algorithms, you’ll get to grips with sorting, searching, and transformations and develop the skills to implement and modify algorithms with best practices. Advanced sections cover extending the STL with custom types and algorithms, as well as concurrency features, exception safety, and parallel algorithms.By the end of this book, you’ll have transformed into a proficient STL practitioner ready to tackle real-world challenges and build efficient and scalable C++ applications.What you will learnStreamline data handling using the std::vectorMaster advanced usage of STL iteratorsOptimize memory in STL containersImplement custom STL allocatorsApply sorting and searching with STL algorithmsCraft STL-compatible custom typesManage concurrency and ensure thread safety in STLHarness the power of parallel algorithms in STLWho this book is forThis book is for intermediate-level C++ developers looking to enhance their software development skills. Familiarity with basic C++ syntax and object-oriented programming (OOP) as well as some exposure to data structures and algorithms is assumed.Tailored to software engineers, computer science students, and hobbyist programmers, this book delves into C++ STL for practical application, performance enhancement, and efficient coding practices.
R 1,531.00


Algorithms and Data Structures - Applications to Graphics and Geometry
This is a college-level introductory textbook of algorithms and data structures with application to graphics and geometry. This textbook, released under a Creative Commons Share Alike (CC BY SA) license, is presented in its original format with the academic content unchanged. It was authored by Jurg Nievergelt (ETH Zurich) and Klaus Hinrichs (Institut fur Informatik) and provided by the University of Georgia's Global Textbook Project. Textbookequity.org/algorithms-and-data-structures/ Photo Credit: Renato Keshet (GFDL) commons.wikimedia.org Contents Part I: Programming environments for motion, graphics, and geometry Part II: Programming concepts: beyond notation Part IV: Complexity of problems and algorithms Part V: Data structures Textbook Equity Edition http://textbookequity.org/algorithms-and-data-structures
R 1,617.51


R 580.00


Algorithms
Algorithms play a central role both in the theory and in the practice of computing. The goal of the authors was to write a textbook that would not trivialize the subject but would still be readable by most students on their own. The book contains over 120 exercises. Some of them are drills; others make important points about the material covered in the text or introduce new algorithms not covered there. The book also provides programming projects. From the Table of Contents: Chapter 1: Basic knowledge of Mathematics, Relations, Recurrence relation and Solution techniques, Function and Growth of functions. Chapter 2: Different Sorting Techniques and their analysis. Chapter 3: Greedy approach, Dynamic Programming, Branch and Bound techniques, Backtracking and Problems, Amortized analysis, and Order Statics. Chapter 4: Graph algorithms, BFS, DFS, Spanning Tree, Flow Maximization Algorithms. Shortest Path Algorithms. Chapter 5: Binary search tree, Red black Tree, Binomial heap, B-Tree and Fibonacci Heap. Chapter 6: Approximation Algorithms, Sorting Networks, Matrix operations, Fast Fourier Transformation, Number theoretic Algorithm, Computational geometry Randomized Algorithms, String matching, NP-Hard, NP-Completeness, Cooks theorem.
R 1,687.00

Numeric Computation and Statistical Data Analysis on the Java Platform
Numericalcomputation, knowledge discovery and statistical data analysis integrated withpowerful 2D and 3D graphics for visualization are the key topics of this book. ThePython code examples powered by the Java platform can easily be transformed toother programming languages, such as Java, Groovy, Ruby and BeanShell. Thisbook equips the reader with acomputational platform which, unlike other statistical programs, is not limitedby a single programming language.The authorfocuses on practical programming aspects and covers a broad range of topics,from basic introduction to the Python language on the Java platform (Jython),to descriptive statistics, symbolic calculations, neural networks, non-linearregression analysis and many other data-mining topics. He discusses how to findregularities in real-world data, how to classify data, and how to process datafor knowledge discoveries. The code snippets are so short that they easily fit intosingle pages.Numeric Computation and Statistical DataAnalysis on the Java Platform is a great choice for those who want to learn how statisticaldata analysis can be done using popular programming languages, who want tointegrate data analysis algorithms in full-scale applications, and deploy suchcalculations on the web pages or computational servers regardlessof their operating system. It is an excellent reference for scientific computations to solvereal-world problems using a comprehensive stack of open-source Javalibraries included in the DataMelt (DMelt) project and will beappreciated by many data-analysis scientists, engineers and students.
R 4,396.00


Construction of Fundamental Data Structures for Strings
This books reviews recent theoretical and practical advances on suffix sorting and introduces algorithmic solutions to problems of wide interest for the construction of fundamental data structures that operate efficiently on strings namely, constructing the suffix array, the longest common prefix (LCP) array, the document array and the Lyndon array. These data structures are the cornerstone of many algorithmic solutions in Bioiformatics, Information Retrieval and Data Compression. This book introduces the relevant problem areas, their importance, the notation and related algorithms and then presents the algorithmic solutions for indexing data structure constructions.This book is intended for graduate students, researchers and practitioners from Computer Science and Bioinformatics with a strong interest in algorithmic aspects.
R 2,198.00






R 580.00

Numeric Computation and Statistical Data Analysis on the Java Platform
Numericalcomputation, knowledge discovery and statistical data analysis integrated withpowerful 2D and 3D graphics for visualization are the key topics of this book. ThePython code examples powered by the Java platform can easily be transformed toother programming languages, such as Java, Groovy, Ruby and BeanShell. Thisbook equips the reader with acomputational platform which, unlike other statistical programs, is not limitedby a single programming language.The authorfocuses on practical programming aspects and covers a broad range of topics,from basic introduction to the Python language on the Java platform (Jython),to descriptive statistics, symbolic calculations, neural networks, non-linearregression analysis and many other data-mining topics. He discusses how to findregularities in real-world data, how to classify data, and how to process datafor knowledge discoveries. The code snippets are so short that they easily fit intosingle pages.Numeric Computation and Statistical DataAnalysis on the Java Platform is a great choice for those who want to learn how statisticaldata analysis can be done using popular programming languages, who want tointegrate data analysis algorithms in full-scale applications, and deploy suchcalculations on the web pages or computational servers regardlessof their operating system. It is an excellent reference for scientific computations to solvereal-world problems using a comprehensive stack of open-source Javalibraries included in the DataMelt (DMelt) project and will beappreciated by many data-analysis scientists, engineers and students.
R 4,466.56

Algorithms for Functional Programming
This book presents a variety of widely used algorithms, expressing them in a pure functional programming language to make their structure and operation clearer to readers. In the opening chapter the author introduces the specific notations that constitute the variant of Scheme that he uses. The second chapter introduces many of the simpler and more general patterns available in functional programming. The chapters that follow introduce and explain data structures, sorting, combinatorial constructions, graphs, and sublist search.Throughout the book the author presents the algorithms in a purely functional version of the Scheme programming language, which he makes available on his website. The book is supported with exercises, and it is suitable for undergraduate and graduate courses on programming techniques.
R 2,763.70



Techniques for Designing and Analyzing Algorithms
Techniques for Designing and Analyzing Algorithms Design and analysis of algorithms can be a difficult subject for students due to its sometimes-abstract nature and its use of a wide variety of mathematical tools. Here the author, an experienced and successful textbook writer, makes the subject as straightforward as possible in an up-to-date textbook incorporating various new developments appropriate for an introductory course.This text presents the main techniques of algorithm design, namely, divide-and-conquer algorithms, greedy algorithms, dynamic programming algorithms, and backtracking. Graph algorithms are studied in detail, and a careful treatment of the theory of NP-completeness is presented. In addition, the text includes useful introductory material on mathematical background including order notation, algorithm analysis and reductions, and basic data structures. This will serve as a useful review and reference for students who have covered this material in a previous course.Features The first three chapters provide a mathematical review, basic algorithm analysis, and data structures Detailed pseudocode descriptions of the algorithms along with illustrative algorithms are included Proofs of correctness of algorithms are included when appropriate The book presents a suitable amount of mathematical rigorAfter reading and understanding the material in this book, students will be able to apply the basic design principles to various real-world problems that they may encounter in their future professional careers.
R 5,565.78


VLSI Architecture for Concurrent Data Structures
Concurrent data structures simplify the development of concurrent programs by encapsulating commonly used mechanisms for synchronization and commu nication into data structures. This thesis develops a notation for describing concurrent data structures, presents examples of concurrent data structures, and describes an architecture to support concurrent data structures. Concurrent Smalltalk (CST), a derivative of Smalltalk-80 with extensions for concurrency, is developed to describe concurrent data structures. CST allows the programmer to specify objects that are distributed over the nodes of a concurrent computer. These distributed objects have many constituent objects and thus can process many messages simultaneously. They are the foundation upon which concurrent data structures are built. The balanced cube is a concurrent data structure for ordered sets. The set is distributed by a balanced recursive partition that maps to the subcubes of a binary 7lrcube using a Gray code. A search algorithm, VW search, based on the distance properties of the Gray code, searches a balanced cube in O(log N) time. Because it does not have the root bottleneck that limits all tree-based data structures to 0(1) concurrency, the balanced cube achieves 0C.:N) con currency. Considering graphs as concurrent data structures, graph algorithms are pre sented for the shortest path problem, the max-flow problem, and graph parti tioning. These algorithms introduce new synchronization techniques to achieve better performance than existing algorithms.
R 4,649.45

New Data Structures and Algorithms for Logic Synthesis and Verification
This book introduces new logic primitives for electronic design automation tools. The author approaches fundamental EDA problems from a different, unconventional perspective, in order to demonstrate the key role of rethinking EDA solutions in overcoming technological limitations of present and future technologies. The author discusses techniques that improve the efficiency of logic representation, manipulation and optimization tasks by taking advantage of majority and biconditional logic primitives. Readers will be enabled to accelerate formal methods by studying core properties of logic circuits and developing new frameworks for logic reasoning engines.
R 1,903.71


Design of Dynamic Data Structures
In numerous computer applications there is a need of storing large sets of objects in such a way that some questions about those objects can be answered efficiently. Data structures that store such sets of objects can be either static (built for a fixed set of objects) or dynamic (insertions of new objects and deletions of existing objects can be performed). Especially for more complex searching problems as they arise in such fields as computational geometry, database design and computer graphics, only static data structures are available. This book aims at remedying this lack of flexibility by providing a number of general techniques for turning static data structures for searching problems into dynamic structures. Although the approach is basically theoretical, the techniques offered are often practically applicable. The book is written in such a way that it is readable for those who have some elementary knowledge of data structures and algorithms. Although this monograph was first published in 1983, it is still unique as a general treatment of methods for constructing dynamic data structures.
R 1,538.58

Algorithms and Discrete Applied Mathematics
This book collects the refereed proceedingsof the Second International Conference on Algorithms and Discrete AppliedMathematics, CALDAM 2016, held in Thiruvananthapuram, India, in February 2016.The volume contains 30 full revised papers from 90 submissions along with 1invited talk presented at the conference. The conference focuses on topicsrelated to efficient algorithms and data structures, their analysis (boththeoretical and experimental) and the mathematical problems arising thereof,and new applications of discrete mathematics, advances in existing applicationsand development of new tools for discrete mathematics.
R 2,187.26


Genetic Algorithms in Java Basics
Genetic Algorithms in Java Basics is a brief introduction to solving problems using genetic algorithms, with working projects and solutions written in the Java programming language. This brief book will guide you step-by-step through various implementations of genetic algorithms and some of their common applications, with the aim to give you a practical understanding allowing you to solve your own unique, individual problems. After reading this book you will be comfortable with the language specific issues and concepts involved with genetic algorithms and you'll have everything you need to start building your own. Genetic algorithms are frequently used to solve highly complex real world problems and with this book you too can harness their problem solving capabilities. Understanding how to utilize and implement genetic algorithms is an essential tool in any respected software developers toolkit. So step into this intriguing topic and learn how you too can improve your software with genetic algorithms, and see real Java code at work which you can develop further for your own projects and research.Guides you through the theory behind genetic algorithmsExplains how genetic algorithms can be used for software developers trying to solve a range of problemsProvides a step-by-step guide to implementing genetic algorithms in Java
R 1,400.65

Data Structures for Engineers and Scientists Using Python
The text covers the fundamentals of Python programming and the implementation of data structures using Python programming with the help of worked-out examples. It provides a learning tool for engineers as well as for researchers and scientists of advanced level. The text further discusses important concepts such as polynomial manipulation, sparse matrices, implementation of stack using the queue model and topological sorting.This book:Discusses the implementation of various data structures such as an array, stack, queue, tree and graph along with sorting and searching algorithms. Includes programming tips to highlight important concepts and help readers avoid common programming errors. Presents each concept of data structure with a different approach and implements the same using Python programming. Offers rich chapter-end pedagogy including objective-type questions (with answers), review questions and programming exercises to facilitate review. Covers fundamentals of Python up to object-oriented concepts including regular expression. It is primarily written for senior undergraduate, graduate students and academic researchers in the fields of electrical engineering, electronics and communication engineering, computer engineering and information technology.
R 3,297.00

JavaTech, an Introduction to Scientific and Technical Computing with Java
JavaTech is a practical introduction to the Java programming language with an emphasis on the features that benefit technical computing. After presenting the basics of object-oriented programming in Java, it examines introductory topics such as graphical interfaces and thread processes. It goes on to review network programming and develops Web client-server examples for tasks such as monitoring remote devices. The focus then shifts to distributed computing with RMI. Finally, it examines how Java programs can access the local platform and interact with hardware. Topics include combining native code with Java, communication via serial lines, and programming embedded processors. An extensive web site supports the book with additional instructional materials. JavaTech demonstrates the ease with which Java can be used to create powerful network applications and distributed computing applications. It will be used as a textbook for programming courses, and by researchers who need to learn Java for a particular task.
R 2,872.00

Techniques for Designing and Analyzing Algorithms
Techniques for Designing and Analyzing Algorithms Design and analysis of algorithms can be a difficult subject for students due to its sometimes-abstract nature and its use of a wide variety of mathematical tools. Here the author, an experienced and successful textbook writer, makes the subject as straightforward as possible in an up-to-date textbook incorporating various new developments appropriate for an introductory course.This text presents the main techniques of algorithm design, namely, divide-and-conquer algorithms, greedy algorithms, dynamic programming algorithms, and backtracking. Graph algorithms are studied in detail, and a careful treatment of the theory of NP-completeness is presented. In addition, the text includes useful introductory material on mathematical background including order notation, algorithm analysis and reductions, and basic data structures. This will serve as a useful review and reference for students who have covered this material in a previous course.Features The first three chapters provide a mathematical review, basic algorithm analysis, and data structures Detailed pseudocode descriptions of the algorithms along with illustrative algorithms are included Proofs of correctness of algorithms are included when appropriate The book presents a suitable amount of mathematical rigorAfter reading and understanding the material in this book, students will be able to apply the basic design principles to various real-world problems that they may encounter in their future professional careers.
R 2,931.00

Randomized Algorithms
For many applications a randomized algorithm is either the simplest algorithm available, or the fastest, or both. This tutorial presents the basic concepts in the design and analysis of randomized algorithms. The first part of the book presents tools from probability theory and probabilistic analysis that are recurrent in algorithmic applications. Algorithmic examples are given to illustrate the use of each tool in a concrete setting. In the second part of the book, each of the seven chapters focuses on one important area of application of randomized algorithms: data structures; geometric algorithms; graph algorithms; number theory; enumeration; parallel algorithms; and on-line algorithms. A comprehensive and representative selection of the algorithms in these areas is also given. This book should prove invaluable as a reference for researchers and professional programmers, as well as for students.
R 3,895.73

Advanced Data Structures
This text closely examines ideas, analysis, and implementation details of data structures as a specialised topic in applied algorithms. It looks at efficient ways to realise query and update operations on sets of numbers, intervals, or strings by various data structures, including: search trees; structures for sets of intervals or piece-wise constant functions; orthogonal range search structures; heaps; union-find structures; dynamization and persistence of structures; structures for strings; and hash tables. Instead of relegating data structures to trivial material used to illustrate object-oriented programming methodology, this is the first volume to show data structures as a crucial algorithmic topic. Numerous code examples in C and more than 500 references make Advanced Data Structures an indispensable text.
R 2,761.27


R 393.25















































