Data Structures and Algorithms
They are the basic elements of every computer program. The choice of data structures and the design of procedures to manipulate them hold the key to verifying that a program does what it is meant to do

You are currently logged out. Please sign in to download the issue PDF.
They are the basic elements of every computer program. The choice of data structures and the design of procedures to manipulate them hold the key to verifying that a program does what it is meant to do
They offer a great diversity of ways to specify a computation. A language transforms the computer into a "virtual machine" whose features and capabllities are determined by the software
A computer operating system spans multiple layers of complexity, from commands entered at a keyboard to the details of electronic switching. The system is organized as a hierarchy of abstractions
Programs can manipulate linguistic symbols with great facility, as in word-processing software, but attempts to have computers deal with meaning are vexed by ambiguity in human languages
No longer the exclusive domain of specialists, interactive computer graphics is fast becoming the standard medium of communication between computers and all kinds of users
Enormous volumes of stored data are of use only if information can be retrieved quickly in an understandable form. Software for the purpose must reflect the structure of the data base and of the storage medium
Software of this kind has the primary function of communicating with and governing physical devices. A process-control computer does not set its own pace but responds to events in the real world
Computation offers a new means of describing and investigating scientific and mathematical systems. Simulation by computer may be the only way to predict how certain complicated systems evolve
The key to intelligent problem solving lies in reducing the random search for solutions. To do so intelligent computer programs must tap the same underlying sources of power as human beings do