data structures algorithms in javasecond edition the software you need to use this book to run the workshop appletsyou need web browser such as microsoft internet explorer or netscape communicator you can also use an applet viewer utility applet viewers are available with various java development systemsincluding the free system from sun microsystemswhich we'll discuss in appendix to run the example programsyou can use the ms-dos utility in microsoft windows (called ms-dos promptor similar text-oriented environment if you want to modify the source code for the example programs or write your own programsyou'll need java development system such systems are available commerciallyor you can download an excellent basic system from sun microsystemsas described in appendix how this book is organized this section is intended for teachers and others who want quick overview of the contents of the book it assumes you're already familiar with the topics and terms involved in study of data structures and algorithms the first two are intended to ease the reader into data structures and algorithms as painlessly as possible "overview,presents an overview of the topics to be discussed and introduces small number of terms that will be needed later on for readers unfamiliar with object-oriented programmingit summarizes those aspects of this discipline that will be needed in the balance of the bookand for programmers who know +but not javathe key differences between these languages are reviewed "arrays,focuses on arrays howeverthere are two subtextsthe use of classes to encapsulate data storage structures and the class interface searchinginsertionand deletion in arrays and ordered arrays are covered linear searching and binary searching are explained workshop applets demonstrate these algorithms with unordered and ordered arrays in "simple sorting,we introduce three simple (but slowsorting techniquesthe bubble sortselection sortand insertion sort each is demonstrated by workshop applet "stacks and queues,covers three data structures that can be thought of as abstract data types (adts)the stackqueueand priority queue these structures reappear later in the bookembedded in various algorithms each is demonstrated by workshop applet the concept of adts is discussed