Best of
Computer-Science

2002

Computer Systems: A Programmer's Perspective


Randal E. Bryant - 2002
    Often, computer science and computer engineering curricula don't provide students with a concentrated and consistent introduction to the fundamental concepts that underlie all computer systems. Traditional computer organization and logic design courses cover some of this material, but they focus largely on hardware design. They provide students with little or no understanding of how important software components operate, how application programs use systems, or how system attributes affect the performance and correctness of application programs. - A more complete view of systems - Takes a broader view of systems than traditional computer organization books, covering aspects of computer design, operating systems, compilers, and networking, provides students with the understanding of how programs run on real systems. - Systems presented from a programmers perspective - Material is presented in such a way that it has clear benefit to application programmers, students learn how to use this knowledge to improve program performance and reliability. They also become more effective in program debugging, because t

Information Theory, Inference and Learning Algorithms


David J.C. MacKay - 2002
    These topics lie at the heart of many exciting areas of contemporary science and engineering - communication, signal processing, data mining, machine learning, pattern recognition, computational neuroscience, bioinformatics, and cryptography. This textbook introduces theory in tandem with applications. Information theory is taught alongside practical communication systems, such as arithmetic coding for data compression and sparse-graph codes for error-correction. A toolbox of inference techniques, including message-passing algorithms, Monte Carlo methods, and variational approximations, are developed alongside applications of these tools to clustering, convolutional codes, independent component analysis, and neural networks. The final part of the book describes the state of the art in error-correcting codes, including low-density parity-check codes, turbo codes, and digital fountain codes -- the twenty-first century standards for satellite communications, disk drives, and data broadcast. Richly illustrated, filled with worked examples and over 400 exercises, some with detailed solutions, David MacKay's groundbreaking book is ideal for self-learning and for undergraduate or graduate courses. Interludes on crosswords, evolution, and sex provide entertainment along the way. In sum, this is a textbook on information, communication, and coding for a new generation of students, and an unparalleled entry point into these subjects for professionals in areas as diverse as computational biology, financial engineering, and machine learning.

Agile Software Development, Principles, Patterns, and Practices


Robert C. Martin - 2002
    The author incudes OOD, UML, Design Patterns, Agile and XP methods with a detailed description of a complete software design for reusable programs in C++ and Java. Using a practical, problem-solving approach, it shows how to develop an object-oriented application -- from the early stages of analysis, through the low-level design and into the implementation. Walks readers through the designer's thoughts -- showing the errors, blind alleys, and creative insights that occur throughout the software design process. KEY TOPICS: Covers: Statics and Dynamics; Principles of Class Design; Complexity Management; Principles of Package Design; Analysis and Design; Patterns and Paradigm Crossings. Explains the principles of OOD, one by one, and then demonstrates them with numerous examples, completely worked-through designs, and case studies. Covers traps, pitfalls, and work arounds in the application of C++ and OOD and then shows how Agile methods can be used. Discusses the methods for designing and developing big software in detail. Features a three-chapter, in-depth, single case study of a building security system. MARKET: For Software Engineers, Programmers, and Analysts who want to understand how to design object oriented software with state of the art methods.

Hacker's Delight


Henry S. Warren Jr. - 2002
    Aiming to tell the dark secrets of computer arithmetic, this title is suitable for library developers, compiler writers, and lovers of elegant hacks.

Types and Programming Languages


Benjamin C. Pierce - 2002
    The study of type systems--and of programming languages from a type-theoretic perspective--has important applications in software engineering, language design, high-performance compilers, and security.This text provides a comprehensive introduction both to type systems in computer science and to the basic theory of programming languages. The approach is pragmatic and operational; each new concept is motivated by programming examples and the more theoretical sections are driven by the needs of implementations. Each chapter is accompanied by numerous exercises and solutions, as well as a running implementation, available via the Web. Dependencies between chapters are explicitly identified, allowing readers to choose a variety of paths through the material.The core topics include the untyped lambda-calculus, simple type systems, type reconstruction, universal and existential polymorphism, subtyping, bounded quantification, recursive types, kinds, and type operators. Extended case studies develop a variety of approaches to modeling the features of object-oriented languages.

Python Cookbook


David Beazley - 2002
    Packed with practical recipes written and tested with Python 3.3, this unique cookbook is for experienced Python programmers who want to focus on modern tools and idioms.Inside, you’ll find complete recipes for more than a dozen topics, covering the core Python language as well as tasks common to a wide variety of application domains. Each recipe contains code samples you can use in your projects right away, along with a discussion about how and why the solution works.Topics include:Data Structures and AlgorithmsStrings and TextNumbers, Dates, and TimesIterators and GeneratorsFiles and I/OData Encoding and ProcessingFunctionsClasses and ObjectsMetaprogrammingModules and PackagesNetwork and Web ProgrammingConcurrencyUtility Scripting and System AdministrationTesting, Debugging, and ExceptionsC Extensions

Patterns of Enterprise Application Architecture


Martin Fowler - 2002
    Multi-tiered object-oriented platforms, such as Java and .NET, have become commonplace. These new tools and technologies are capable of building powerful applications, but they are not easily implemented. Common failures in enterprise applications often occur because their developers do not understand the architectural lessons that experienced object developers have learned. Patterns of Enterprise Application Architecture is written in direct response to the stiff challenges that face enterprise application developers. The author, noted object-oriented designer Martin Fowler, noticed that despite changes in technology--from Smalltalk to CORBA to Java to .NET--the same basic design ideas can be adapted and applied to solve common problems. With the help of an expert group of contributors, Martin distills over forty recurring solutions into patterns. The result is an indispensable handbook of solutions that are applicable to any enterprise application platform. This book is actually two books in one. The first section is a short tutorial on developing enterprise applications, which you can read from start to finish to understand the scope of the book's lessons. The next section, the bulk of the book, is a detailed reference to the patterns themselves. Each pattern provides usage and implementation information, as well as detailed code examples in Java or C#. The entire book is also richly illustrated with UML diagrams to further explain the concepts. Armed with this book, you will have the knowledge necessary to make important architectural decisions about building an enterprise application and the proven patterns for use when building them. The topics covered include - Dividing an enterprise application into layers - The major approaches to organizing business logic - An in-depth treatment of mapping between objects and relational databases - Using Model-View-Controller to organize a Web presentation - Handling concurrency for data that spans multiple transactions - Designing distributed object interfaces

Debugging: The 9 Indispensable Rules for Finding Even the Most Elusive Software and Hardware Problems


David J. Agans - 2002
    Written in a frank but engaging style, Debuggingprovides simple, foolproof principles guaranteed to help find any bug quickly. This book makes those shelves of application-specific debugging books (on C++, Perl, Java, etc.) obsolete. It changes the way readers think about debugging, making those pesky problems suddenly much easier to find and fix. Illustrating the rules with real-life bug-detection war stories, the book shows readers how to: * Understand the system: how perceiving the ""roadmap"" can hasten your journey * Quit thinking and look: when hands-on investigation can’t be avoided * Isolate critical factors: why changing one element at a time can be an essential tool * Keep an audit trail: how keeping a record of the debugging process can win the day

Think Python


Allen B. Downey - 2002
    It covers the basics of computer programming, including variables and values, functions, conditionals and control flow, program development and debugging. Later chapters cover basic algorithms and data structures.

Let Us C


Yashavant P. Kanetkar - 2002
    These two have been the most distinguishing features of all the previous 6 editions of this book. Today's C programmer has to not only master the complexities and intricacies of the language but also has to contend with its usage in environments like Windows and Linux. This book covers all these three aspects of C Programming very well. This book doesn't assume any programming background. It begins with the basics and steadily builds the pace so that the reader finds it easy to handle complicated topics towards the end. Each chapter has been designed to create a deep and lasting impression on the reader's mind. "If taught through examples, any concept becomes easy to grasp". This book follows this dictum faithfully. Yashavant has crafted well thought out programming examples for every aspect of C Programming. Some of the highlighting features of the book are: Traditional C Programming: Pointers, Complete build process, Low-level File I/O, Structures, Unions, Bit-fields, Bitwise Operators, Creating Function Libraries; C Under Linux: Signals and Signal Handling; Blocking of Signals; Event Driven Programming; Process, PIDs, Zombies; Forking of Process; GNOME Programming Using GTK Library; C Under Windows: Windows Programming Model; Windows Messaging Architecture; Mouse Programming; Hardware Interaction; and Windows Hooks.

Test-Driven Development: By Example


Kent Beck - 2002
    While some fear is healthy (often viewed as a conscience that tells programmers to be careful!), the author believes that byproducts of fear include tentative, grumpy, and uncommunicative programmers who are unable to absorb constructive criticism. When programming teams buy into TDD, they immediately see positive results. They eliminate the fear involved in their jobs, and are better equipped to tackle the difficult challenges that face them. TDD eliminates tentative traits, it teaches programmers to communicate, and it encourages team members to seek out criticism However, even the author admits that grumpiness must be worked out individually! In short, the premise behind TDD is that code should be continually tested and refactored. Kent Beck teaches programmers by example, so they can painlessly and dramatically increase the quality of their work.

Free Software, Free Society: Selected Essays


Richard M. Stallman - 2002
    Healso discusses the social aspects of software and how free softwarecan create community and social justice.Given the current turmoil in copyright and patent laws, includingthe DMCA and proposed CBDTPA, these essays are more relevant thanever. Stallman tackles head-on the essential issues driving thecurrent changes in copyright law. He argues that for creativity toflourish, software must be free of inappropriate and overly-broadlegal constraints. Over the past twenty years his arguments andactions have changed the course of software history; this new book issure to impact the future of software and legal policies in the yearsto come.Lawrence Lessig, the author of two well-known books on similar topics,writes the introduction. He is a noted legal expert on copyright lawand a Stanford Law School professor.

C++ Programming: From Problem Analysis to Program Design


D.S. Malik - 2002
    Best-selling author D.S. Malik employs a student-focused approach, using complete programming examples to teach introductory programming concepts. This third edition has been enhanced to further demonstrate the use of OOD methodology, to introduce sorting algorithms (bubble sort and insertion sort), and to present additional material on abstract classes. In addition, the exercise sets at the end of each chapter have been expanded, and now contain several calculus and engineering-related exercises. Finally, all programs have been written, compiled, and quality-assurance tested with Microsoft Visual C++ .NET, available as an optional compiler with this text.

Programming Collective Intelligence: Building Smart Web 2.0 Applications


Toby Segaran - 2002
    With the sophisticated algorithms in this book, you can write smart programs to access interesting datasets from other web sites, collect data from users of your own applications, and analyze and understand the data once you've found it.Programming Collective Intelligence takes you into the world of machine learning and statistics, and explains how to draw conclusions about user experience, marketing, personal tastes, and human behavior in general -- all from information that you and others collect every day. Each algorithm is described clearly and concisely with code that can immediately be used on your web site, blog, Wiki, or specialized application. This book explains:Collaborative filtering techniques that enable online retailers to recommend products or media Methods of clustering to detect groups of similar items in a large dataset Search engine features -- crawlers, indexers, query engines, and the PageRank algorithm Optimization algorithms that search millions of possible solutions to a problem and choose the best one Bayesian filtering, used in spam filters for classifying documents based on word types and other features Using decision trees not only to make predictions, but to model the way decisions are made Predicting numerical values rather than classifications to build price models Support vector machines to match people in online dating sites Non-negative matrix factorization to find the independent features in a dataset Evolving intelligence for problem solving -- how a computer develops its skill by improving its own code the more it plays a game Each chapter includes exercises for extending the algorithms to make them more powerful. Go beyond simple database-backed applications and put the wealth of Internet data to work for you. "Bravo! I cannot think of a better way for a developer to first learn these algorithms and methods, nor can I think of a better way for me (an old AI dog) to reinvigorate my knowledge of the details."-- Dan Russell, Google "Toby's book does a great job of breaking down the complex subject matter of machine-learning algorithms into practical, easy-to-understand examples that can be directly applied to analysis of social interaction across the Web today. If I had this book two years ago, it would have saved precious time going down some fruitless paths."-- Tim Wolters, CTO, Collective Intellect

HTTP: The Definitive Guide


David Gourley - 2002
    Understanding HTTP is essential for practically all web-based programming, design, analysis, and administration.While the basics of HTTP are elegantly simple, the protocol's advanced features are notoriously confusing, because they knit together complex technologies and terminology from many disciplines. This book clearly explains HTTP and these interrelated core technologies, in twenty-one logically organized chapters, backed up by hundreds of detailed illustrations and examples, and convenient reference appendices. HTTP: The Definitive Guide explains everything people need to use HTTP efficiently -- including the black arts and tricks of the trade -- in a concise and readable manner.In addition to explaining the basic HTTP features, syntax and guidelines, this book clarifies related, but often misunderstood topics, such as: TCP connection management, web proxy and cache architectures, web robots and robots.txt files, Basic and Digest authentication, secure HTTP transactions, entity body processing, internationalized content, and traffic redirection.Many technical professionals will benefit from this book. Internet architects and developers who need to design and develop software, IT professionals who need to understand Internet architectural components and interactions, multimedia designers who need to publish and host multimedia, performance engineers who need to optimize web performance, technical marketing professionals who need a clear picture of core web architectures and protocols, as well as untold numbers of students and hobbyists will all benefit from the knowledge packed in this volume.There are many books that explain how to use the Web, but this is the one that explains how the Web works. Written by experts with years of design and implementation experience, this book is the definitive technical bible that describes the why and the how of HTTP and web core technologies. HTTP: The Definitive Guide is an essential reference that no technically-inclined member of the Internet community should be without.

Texturing and Modeling: A Procedural Approach


Kenton F. Musgrave - 2002
    This edition features chapters on: real-time procedural shading; texture atlases; procedural geometric instancing; cellular texturing; anti-aliasing; cloud modeling and noise improvements.

102 Combinatorial Problems: From the Training of the USA IMO Team


Titu Andreescu - 2002
    This volume contains detailed solutions, sometimes multiple solutions, for all the problems, and some solutions offer additional twists for further thought . . . "--CHOICE102 Combinatorial Problems consists of carefully selected problems that have been used in the training and testing of the USA International Mathematical Olympiad (IMO) team. The text provides in-depth enrichment in the important areas of combinatorics by systematically reorganizing and enhancing problem-solving tactics and strategies. The book gradually builds combinatorial skills and techniques and not only broadens the student's view of mathematics, but is also excellent for training teachers.

Perl Pocket Reference


Johan Vromans - 2002
    This handy, well-organized quick reference condenses stacks of Perl documentation down to the most essential at-your-fingertips facts. For ease-of-use, convenience, and price, this little reference is the first place Perl programmers look when they need an answer quickly.The "Perl Pocket Referenc" provides a complete overview of the Perl programming language, all packed into a convenient, carry-around booklet. It is updated for Perl 5.8, and covers a summary of Perl syntax rules, a complete list of operators, built-in functions, and standard library modules, all with brief descriptions. Also included are the newest Perl features, such as enhanced regular expressions, multithreading, the Perl compiler, and Unicode support.The "Perl Pocket Reference," 4th Edition, is the perfect companion to the authoritative books on Perl published by O'Reilly & Associates: "Programming Perl," "Learning Perl," and the "Perl Cookbook." This pocket reference will never make it to the bookshelf--dog-eared and well worn, it will remain within arms reach of the keyboard or tucked in a back pocket, where it will be referred to on a daily basis.

Approximation Algorithms


Vijay V. Vazirani - 2002
    Bertrand Russell (1872-1970) Most natural optimization problems, including those arising in important application areas, are NP-hard. Therefore, under the widely believed con jecture that P -=/= NP, their exact solution is prohibitively time consuming. Charting the landscape of approximability of these problems, via polynomial time algorithms, therefore becomes a compelling subject of scientific inquiry in computer science and mathematics. This book presents the theory of ap proximation algorithms as it stands today. It is reasonable to expect the picture to change with time. This book is divided into three parts. In Part I we cover combinato rial algorithms for a number of important problems, using a wide variety of algorithm design techniques. The latter may give Part I a non-cohesive appearance. However, this is to be expected - nature is very rich, and we cannot expect a few tricks to help solve the diverse collection of NP-hard problems. Indeed, in this part, we have purposely refrained from tightly cat egorizing algorithmic techniques so as not to trivialize matters. Instead, we have attempted to capture, as accurately as possible, the individual character of each problem, and point out connections between problems and algorithms for solving them."

Modern Processor Design: Fundamentals of Superscalar Processors


John Paul Shen - 2002
    Complex practices are distilled into foundational principles to reveal the authors’ insights and hands-on experience in the effective design of contemporary high-performance micro-processors for mobile, desktop, and server markets. Key theoretical and foundational principles are presented in a systematic way to ensure comprehension of important implementation issues. The text presents fundamental concepts and foundational techniques such as processor design, pipelined processors, memory and I/O systems, and especially superscalar organization and implementations. Two case studies and an extensive survey of actual commercial superscalar processors reveal real-world developments in processor design and performance. A thorough overview of advanced instruction flow techniques, including developments in advanced branch predictors, is incorporated. Each chapter concludes with homework problems that will institute the groundwork for emerging techniques in the field and an introduction to multiprocessor systems.

Modern Processor Design: Fundamentals of Superscalar Processors


John P. Shen - 2002
    This book also features other advanced techniques from research efforts that extend beyond ILP to exploit thread-level parallelism (TLP).

Essentials of Computational Chemistry: Theories and Models


Christopher J. Cramer - 2002
    Suitable for both experimentalists and theorists, a wide range of samples and applications are included drawn from all key areas. The book carefully leads the reader thorough the necessary equations providing information explanations and reasoning where necessary and firmly placing each equation in context.

Flexible Pattern Matching in Strings: Practical On-Line Search Algorithms for Texts and Biological Sequences


Gonzalo Navarro - 2002
    This book presents a practical approach to string matching problems, focusing on the algorithms and implementations that perform best in practice. It covers searching for simple, multiple and extended strings, as well as regular expressions, and exact and approximate searching. It includes all the most significant new developments in complex pattern searching. The clear explanations, step-by-step examples, algorithm pseudocode, and implementation efficiency maps will enable researchers, professionals and students in bioinformatics, computer science, and software engineering to choose the most appropriate algorithms for their applications.

Specifying Systems: The TLA+ Language and Tools for Hardware and Software Engineers


Leslie Lamport - 2002
    The first part provides a concise and lucid introduction to specification, explaining how to describe, with mathematical precision, the behavioural properties of a system - what that system is allowed to do. The emphasis here is on safety properties. The second part covers more advanced topics, including liveness and fairness, real time properties, and composition. The books final two parts provide a complete reference manual for the TLA+ language and tools, as well as a mini-manual.

Auction Theory


Vijay Krishna - 2002
    The book develops the main concepts of auction theory from scratch in a self-contained and theoretically rigorous manner. It explores auctions and competitive bidding as games of incomplete information through detailed examinations of themes central to auction theory.This book complements its superb presentation of auction theory with clear and concise proofs of all results on bidding strategies, efficiency, and revenue maximization. It provides discussions on auction-related subjects, including private value auctions; the Revenue Equivalence Principle; auctions with interdependent values; the Revenue Ranking (Linkage) Principle; mechanism design with interdependent values; bidding rings; multiple object auctions; equilibrium and efficiency with private values; and nonidentical objects.This book is essential reading for graduate students taking courses on auction theory, the economics of information, or the economics of incentives, as well as for any serious student of auctions. It will also appeal to professional economists or business analysts working in contract theory, experimental economics, industrial organization, and microeconomic theory.

Foundations of Genetic Programming


William B. Langdon - 2002
    Since its inceptions more than ten years ago, GP has been used to solve practical problems in a variety of application fields. Along with this ad-hoc engineering approaches interest increased in how and why GP works. This book provides a coherent consolidation of recent work on the theoretical foundations of GP. A concise introduction to GP and genetic algorithms (GA) is followed by a discussion of fitness landscapes and other theoretical approaches to natural and artificial evolution. Having surveyed early approaches to GP theory it presents new exact schema analysis, showing that it applies to GP as well as to the simpler GAs. New results on the potentially infinite number of possible programs are followed by two chapters applying these new techniques.

Information Systems: An Introduction To Informatics In Organisations


Paul Beynon-Davies - 2002
    

Combinatorial Optimization: Theory and Algorithms


Bernhard Korte - 2002
    It is based on numerous courses on combinatorial optimization and specialized topics, mostly at graduate level. This book reviews the fundamentals, covers the classical topics (paths, flows, matching, matroids, NP-completeness, approximation algorithms) in detail, and proceeds to advanced and recent topics, some of which have not appeared in a textbook before. Throughout, it contains complete but concise proofs, and also provides numerousexercises and references.This fifth edition has again been updated, revised, and significantlyextended, with more than 60 new exercises and new material on varioustopics, including Cayley's formula, blocking flows, faster"b"-matching separation, multidimensional knapsack, multicommoditymax-flow min-cut ratio, and sparsest cut. Thus, this book represents the state of the art of combinatorial optimization.

The Design of Rijndael: AES - The Advanced Encryption Standard


Joan Daemen - 2002
    AES is expected to gradually replace the present Data Encryption Standard (DES) as the most widely applied data encryption technology. This book, written by the designers of the block cipher, presents Rijndael from scratch. The underlying mathematics and the wide trail strategy as the basic design idea are explained in detail and the basics of differential and linear cryptanalysis are reworked. Subsequent chapters review all known attacks against the Rijndael structure and deal with implementation and optimization issues. Finally, other ciphers related to Rijndael are presented.

Jim Blinn's Corner: Notation, Notation, Notation


Jim Blinn - 2002
    But here, for the first time, you get the "Director's Cut" of the articles: revised, expanded, and enhanced versions of the originals. What's changed? Improved mathematical notation, more diagrams, new solutions. What remains the same? All the things you've come to rely on: straight answers, irreverent style, and innovative thinking. This is Jim Blinn at his best now even better.Highlights- Features 21 expanded and updated installments of "Jim Blinn's Corner," dating from 1995 to 2001, and never before published in book form.- Includes "deleted scenes" tangential explorations that didn't make it into the original columns.- Details how Blinn represented planets in his famous JPL flyby animations.- Explores a wide variety of other topics, from the concrete to the theoretical: assembly language optimization for parallel processors, exotic usage of C++ template instantiation, algebraic geometry, a graphical notation for tensor contraction, and his hopes for a future world. *Features 21 expanded and updated installments of "Jim Blinn's Corner," dating from 1995 to 2001, and never before published in book form.*Includes "deleted scenes" tangential explorations that didn't make it into the original columns.*Details how Blinn represented planets in his famous JPL flyby animations.*Explores a wide variety of other topics, from the concrete to the theoretical: assembly language optimization for parallel processors, exotic usage of C++ template instantiation, algebraic geometry, a graphical notation for tensor contraction, and his hopes for a future world."

Instant Notes in Bioinformatics


D.R. Westhead - 2002
    The book begins by describing data generation and databases. Following this it takes us to the newer bioinformatics problems associated with structures, expression, proteomics, interactions and pathways. The important areas in bioinformatics are covered to encourage easy learning and revision.

Understanding Unix/Linux Programming: A Guide to Theory and Practice


Bruce Molay - 2002
    The book is organized by subsystem, each presented in visual terms and explained using vivid metaphors. It breaks the information into manageable parts that can be presented, explained, and mastered.KEY TOPICS: By using case studies and an extremely reader-friendly manner to illustrate complex ideas and concepts, the book covers the basics of systems programming, users, files and manuals, how to read a directory, using 1S, writing PWD, studying STTY, writing a video game, studying SH, environment and shell variables, I/O redirection and pipes, servers and sockets, writing a web server, license servers, and concurrent functions. MARKET: For Unix system administrators and programmers, network programmers, and others who have used other operating systems and need to learn Unix programming to expand their skill sets.

Modern Programming Languages: A Practical Introduction


Adam Brooks Webber - 2002
    Webber (University of Wisconsin) explains the grammar that defines syntax and semantics, language systems, types, polymorphism

Data Mining: Concepts, Models, Methods, and Algorithms


Mehmed Kantardzic - 2002
    This book reviews state-of-the-art methodologies and techniques for analyzing enormous quantities of raw data in high-dimensional data spaces to extract new information for decision-making.This Second Edition of Data Mining: Concepts, Models, Methods, and Algorithms discusses data mining principles and then describes representative state-of-the-art methods and algorithms originating from different disciplines such as statistics, machine learning, neural networks, fuzzy logic, and evolutionary computation. Detailed algorithms are provided with necessary explanations and illustrative examples, and questions and exercises for practice at the end of each chapter. This new edition features the following new techniques/methodologies:Support Vector Machines (SVM)--developed based on statistical learning theory, they have a large potential for applications in predictive data miningKohonen Maps (Self-Organizing Maps - SOM)--one of very applicative neural-networks-based methodologies for descriptive data mining and multi-dimensional data visualizationsDBSCAN, BIRCH, and distributed DBSCAN clustering algorithms--representatives of an important class of density-based clustering methodologiesBayesian Networks (BN) methodology often used for causality modelingAlgorithms for measuring Betweeness and Centrality parameters in graphs, important for applications in mining large social networksCART algorithm and Gini index in building decision treesBagging & Boosting approaches to ensemble-learning methodologies, with details of AdaBoost algorithmRelief algorithm, one of the core feature selection algorithms inspired by instance-based learningPageRank algorithm for mining and authority ranking of web pagesLatent Semantic Analysis (LSA) for text mining and measuring semantic similarities between text-based documentsNew sections on temporal, spatial, web, text, parallel, and distributed data miningMore emphasis on business, privacy, security, and legal aspects of data mining technologyThis text offers guidance on how and when to use a particular software tool (with the companion data sets) from among the hundreds offered when faced with a data set to mine. This allows analysts to create and perform their own data mining experiments using their knowledge of the methodologies and techniques provided. The book emphasizes the selection of appropriate methodologies and data analysis software, as well as parameter tuning. These critically important, qualitative decisions can only be made with the deeper understanding of parameter meaning and its role in the technique that is offered here.This volume is primarily intended as a data-mining textbook for computer science, computer engineering, and computer information systems majors at the graduate level. Senior students at the undergraduate level and with the appropriate background can also successfully comprehend all topics presented here.

Evolutionary Algorithms for Solving Multi-Objective Problems


David A. Van Veldhuizen - 2002
    The various features of multi-objective evolutionary algorithms are presented here in an innovative and student-friendly fashion, incorporating state-of-the-art research. The book disseminates the application of evolutionary algorithm techniques to a variety of practical problems. It contains exhaustive appendices, index and bibliography and links to a complete set of teaching tutorials, exercises and solutions.

Data Structures and the Standard Template Library


William J. Collins - 2002
    This title uses C++ as the language of instruction, and provides most of the data structures in the Standard Template Library. Discussing alternative implementation, it allows students to implement their own data structures or to apply data structures introduced in the chapter.

Algebraic Codes for Data Transmission


Richard E. Blahut - 2002
    This volume provides an accessible introduction to the basic elements of algebraic codes and discusses their use in a variety of applications. The author describes a range of important coding techniques, including Reed-Solomon codes, BCH codes, trellis codes, and turbocodes. Throughout the book, mathematical theory is illustrated by reference to many practical examples. The book is written for graduate students of electrical and computer engineering and practicing engineers whose work involves communications or signal processing.

Jewels of Stringology: Text Algorithms


Maxime Crochemore - 2002
    This book deals with the most basic algorithms in the area. Most of them can be viewed as “algorithmic jewels” and deserve reader-friendly presentation. One of the main aims of the book is to present several of the most celebrated algorithms in a simple way by omitting obscuring details and separating algorithmic structure from combinatorial theoretical background. The book reflects the relationships between applications of text-algorithmic techniques and the classification of algorithms according to the measures of complexity considered. The text can be viewed as a parade of algorithms in which the main purpose is to discuss the foundations of the algorithms and their interconnections. One can partition the algorithmic problems discussed into practical and theoretical problems. Certainly, string matching and data compression are in the former class, while most problems related to symmetries and repetitions in texts are in the latter. However, all the problems are interesting from an algorithmic point of view and enable the reader to appreciate the importance of combinatorics on words as a tool in the design of efficient text algorithms.In most textbooks on algorithms and data structures, the presentation of efficient algorithms on words is quite short as compared to issues in graph theory, sorting, searching, and some other areas. At the same time, there are many presentations of interesting algorithms on words accessible only in journals and in a form directed mainly at specialists. This book fills the gap in the book literature on algorithms on words, and brings together the many results presently dispersed in the masses of journal articles. The presentation is reader-friendly; many examples and about two hundred figures illustrate nicely the behaviour of otherwise very complex algorithms.

Cisco CCNA Exam #640-607 Certification Guide


Wendell Odom - 2002
    You'll learn about: Internetworking functions of each layer of the OSI reference model and how they are performed in network devicesFunctionality of Cisco IOS(r) Software and TCP/IP and IPX network protocolsSegmentation of networks using routers, switches, and bridgesUse and configuration of Catalyst(r) switches, Spanning-Tree Protocol (STP), and virtual LANs (VLANs)Concepts behind RIP and IGRP and how to add routing protocols to a configurationConfiguration, monitoring, and verification of standard and extended IP and IPX access listsFrame Relay and ISDN concepts and configurationAlthough it's the first step in the Cisco Career Certifications, the CCNA exam is a difficult test. The recent additions of performance-based questions have made it even more challenging. Your first attempt at becoming Cisco certified requires a lot of study and confidence in your networking knowledge. When you're ready to test your skills, complete your knowledge of exam topics, and prepare for exam day, you need the preparation tools found in "Cisco CCNA Exam #640-607 Certification Guide" from Cisco Press.Completely revised by CCIE(r) and certified Cisco Systems instructor Wendell Odom, "Cisco CCNA Exam #640-607 Certification Guide" is a comprehensive study tool for the CCNA exam. Updated with new content and features to make it easier to read and reference, this book helps you understand and master the material you will need to know to pass the exam. The instructor-developed elements andtechniques enable you to maximize your retention of exam topics. "Do I Know This Already?" quizzes open each chapter and allow you to decide how much time you need to spend on each section. Exam topic lists and Foundation Summary tables and figures make referencing easy and give you a quick refresher whenever you need it. Challenging chapter-ending review questions and scenario exercises help you assess your knowledge and reinforce key concepts.This edition of the book includes special features in both the text and CD-ROM to help you prepare for the new simulation-based questions you will encounter on the exam. These new simulation-based questions are designed to test your hands-on skills. A chapter of lab scenarios allows you to practice applying your knowledge on home-, work, or remote access-based labs. In addition to these exercises, the robust exam engine on the CD-ROM includes the new question types so that you can assess your ability to handle this new challenge. The CD-ROM's test engine includes powerful features that enable you to take practice exams that mimic the real testing environment, focus on particular topic areas, track your progress, and refer to electronic text to review concepts."Cisco CCNA Exam #640-607 Certification Guide" is part of a recommended learning path from Cisco Systems that can include simulation and hands-on training from authorized Cisco Learning Partners and self-study products from Cisco Press. To find out more about instructor-led training, e-learning, and hands-on instruction offered by authorized Cisco Learning Partners worldwide, please visit www.cisco.com/go/authorizedtraining.Companion CD-ROMThe companion CD-ROM contains a testbank with 300 practice questions in the new exam format.

Classical and Quantum Computation


A.Yu. Kitaev - 2002
    It includes a thorough treatment of the local theory using the tools of commutative algebra, an extensive development of sheaf theory and the theory of coherent analytic and algebraic sheaves, proofs of the main vanishing theorems for these categories of sheaves, and a complete proof of the finite dimensionality of the cohomology of coherent sheaves on compact varieties. The vanishing theorems have a wide variety of applications and these are covered in detail.

Computers: An Illustrated History


Christian Wurster - 2002
    From automated punch-card calculators to the first personal computers such as the Apple II and Commodore 64, to today's Sony Vaios and PowerBook G4s, the computer has undergone an amazing, rapid evolution in its brief history. Can you believe the computer's first input device was a light pen used to select a symbol on the screen? And that computer keyboards were preceded by teletypewriters? The progress we've witnessed in our lifetimes is mind-boggling. The struggle for the best interface, the greatest design, and the fastest processor have resulted in computers of a size, power, capability and use that were unfathomable only a few decades ago. Discover the fascinating history of computers, interfaces, and computer design in this illustrated guide that includes pictures of nearly every computer ever made, an informative text describing the computer's evolution up to the present day, and an A-Z index of the most influential computer firms. **special horizontal format, laptop-style

Mathematics Of Quantum Computation


Goong Chen - 2002
    Its realization will be the result of multidisciplinary efforts, but ultimately, it is mathematics that lies at the heart of theoretical quantum computer science.Mathematics of Quantum Computation brings together leading computer scientists, mathematicians, and physicists to provide the first interdisciplinary but mathematically focused exploration of the field's foundations and state of the art. Each section of the book addresses an area of major research, and does so with introductory material that brings newcomers quickly up to speed. Chapters that are more advanced include recent developments not yet published in the open literature.Information technology will inevitably enter into the realm of quantum mechanics, and, more than all the atomic, molecular, optical, and nanotechnology advances, it is the device-independent mathematics that is the foundation of quantum computer and information science. Mathematics of Quantum Computation offers the first up-to-date coverage that has the technical depth and breadth needed by those interested in the challenges being confronted at the frontiers of research.

Computer Algebra and Symbolic Computation: Elementary Algorithms


Joel S. Cohen - 2002
    The viewpoint is that mathematical expressions, represented by expression trees, are the data objects of computer algebra programs, and by using a few primitive operations that analyze and construct expressions, we can implement many elementary operations from algebra, trigonometry, calculus, and differential equations. With a minimum of prerequisites this book is accessible to and useful for students of mathematics, computer science, and other technical fields. The book contains a CD with the full, searchable text and implementations of all algorithms in the Maple, Mathematica, and MuPad programming languages.

A+ Guide to Hardware: Managing, Maintaining and Troubleshooting


Jean Andrews - 2002
    Includes Unopened Resource CD and Video Clips

The Human-Computer Interaction Handbook: Fundamentals, Evolving Technologies and Emerging Applications, Third Editiion


Juliele Jacko - 2002
    This includes computer scientists; industrial, electrical, and computer engineers; cognitive scientists; experimental psychologists; human factors professionals; interface and systems designers; product managers; and executives working with product development.This new Handbook offers a comprehensive compendium of foundational principles, as well as the most recent advances in conceptualizing, designing, and evaluating computing technologies. It spans a variety of traditional and non-traditional platforms, including desktop and mobile computing, networked and virtual environments, and information appliances. In addition, the volume offers thorough coverage of interaction issues concerning diverse users, including men; women; children; the elderly; and those with cognitive, physical, and perceptual impairments. Another unique feature of this new Handbook is that HCI is presented in the context of special application domains, such as e-commerce, telecommunication, government, health care, educational software, entertainment, games, motor vehicles, and aerospace.In this volume, an unprecedented number of top experts in the field of HCI share their expertise, experience, and insight regarding research, technological advancements, and specific methodologies in the field of human-computer interaction.

Processing XML with Java�: A Guide to Sax, Dom, Jdom, Jaxp, and Trax


Elliotte Rusty Harold - 2002
    This is the book that brings his skills together.-- Harold has a fantastic reputation, is a skilled writer, and has excellent publicity channels.-- A complete guide to writing Java programs that read and write XML documents.Java is the ideal language for processing XML documents. Consequently, more XML tools have been written in Java than in any other language. More open source XML tools are written in Java than in any other language. Processing XML with Java fills an immediate need for developers who are working with XML in Java. It is a comprehensive tutorial and reference to the major APIs. This book shows developers how to: save XML documents from their applications written in Java; read XML documents produced by other programs; communicate with network servers that send and receive XML data; validate documents they receive against DTDs, schemas, and business rules; and integrate XSLT into their programs.

Sams Teach Yourself C in 21 Days


Bradley J. Jones - 2002
    This tutorial helps you master the basics and them move on to the more advanced features and concepts. It gives you expert tips on implementing C in the corporate environment, improves your understanding of the fundamentals of C, and teaches you the advanced features that C offers. Full description