You are on page 1of 10

TERM PAPER CONTENTS

OF 1. ACKNOWLEGEMENT
M
2. MAINTAINENCE OF REUSABILITY
DATA STRUCTURES
3. OPERATIONS

4. EXAMPLES OF SUBROUTINES
MAINTANENCE OF REUSABILITY OF
5. LINKED LIST
SPACE IN LINK LIST
6. REUSABILITY CONCEPTS

7 . SPACE MAINTAINER
SUBMITTED TO: SUBMITTED BY:
8. BIBLIOGRAPHY
MR.ANUP SINGH YASHU DHINGRA
ROLL NO-66
REG NO-3010070035
I also express my gratitude to Mr.Anup singh
for providing me the infrastructure to carry out the
ACKNOWLEDGEMENT project and to all staff members who were directly
and indirectly instrument in enabling me to stay
committed for the project.
Throughout the project the focus has been on
I m extremely grateful and remain indebted to my
presenting information and comments in an easy
guide Mr.Anup singh for being a source of
and intelligible manner. The project is very useful
inspiration and for his constant support in the
for those who want to know about this.
Design, Implementation and Evaluation of the
In the last, I gratefully acknowledge and
project. I m thankful to him for his constant
express my gratitude to all staff members and
constructive criticism and invaluable suggestions,
friends who supported me in preparing this project
which benefited me a lot while developing the

project on “ MAINTANENCE OF REUSABILITY OF SPACE


Yashu Dhingra
IN LINK LIST
”. He has been a constant source of inspiration and
motivation for hard work. He has been very co-
operative throughout this project work. Through
this column, it would be my upmost pleasure to
express my warm thanks to him for his
encouragement, co-operation and consent without
which i mightn’t be able to accomplish this project.
solutions. Further more, several complex problems after
considerable thought can be broken down into smaller ones
which can be solved using tried and tested algorithms which in
effect makes the solution simple.

3. Performance: Generally most code is performant enough.


And if not, use a code profiler. More often than the bottleneck
will far outweigh any small code optimizations you could have
made at the cost of either readability or re-useability.
MAINTANENCE OF REUSABILITY OF SPACE IN
LINK LIST Reusability of the space is the likelihood a segment of source
code that can be used again to add new functionalities with
1. Maintainability: If the code is un-readable it's useless, no slight or no modification. Reusable modules and classes reduce
matter how fast it is. And it definitely won't be be re-used.It is implementation time, increase the likelihood that prior testing
even more affected by how the code interacts with the code and use has eliminated bugs and localizes code modifications
unknown to us when a change in implementation is required in link list.
Linked lists are useful when size and shape of data structure
2. Reusability: Not all code is reusable, but a lot of it is. If you cannot be predicted in advance.Linked lists are an example of
can, by all means make your code simpler. The easiest is divide dynamic data structures their size, and even shape, can change
and conquer. For example, create simple components you'll use during execution.Separate blocks of storage are linked together
over and over and over. UI widgets are the most common. But using pointers. Blocks are not necessarily contiguous.Linked
it's the same with utilities. As well, creating a representations are an important alternative to sequential
structure/framework to your code helps. Error validation code, representations (arrays). Many key abstract data types (lists,
etc.Great emphasis is laid on reusable components in software stacks, queues, sets,trees, tables) can be represented with either
because of the reduction in the development and testing time by linked structures or with arrays.Important to understand the
using already well tested reusable modules. Algorithms and dataperformance tradeoffs in
structures being abstract components can be reused to solve the choice of representation.
several commonly occuring problems such as sorting and
searching. Moreover, these have been tried, tested and Subroutines or functions are the simplest form of reuse. A
immensely improved upon by developers and scientists who chunk of code is regularly organized using modules or
have worked towards creating highly efficient, reusable namespaces into layers. Proponents claim that objects and
software components offer a more advanced form of reusability, length coding encodes the repeated strings using an "escape"
although it has been tough to objectively measure and define character, a repeat character, and the character to be repeated.
levels or scores of reusability.
The search operation provides for searching a sequentially
The ability to reuse relies in an essential way on the ability to linked list, checking the character field of each node in the
build larger things from smaller parts, and being able to linked list for a match with the input character. The search
identify commonalities among those parts. Reusability is often a operation utilizes repetitive logic which checks a node for a
required characteristic of platform software. Reusability brings match and in the case of a no match, moves sequentially to the
several aspects to software development that do not need to be next node to continue searching. Typically, the search operation
considered when reusability is not required. checks for a potential match condition as well as a condition
which indicates the end of the linked list. Provision of a
Reusability implies some explicit management of build, termination node allows for a potential match condition check
packaging, distribution, installation, configuration, deployment, to be sufficient in terminating the search logic. Since the linked
maintenance and upgrade issues. If these issues are not list is a lexicographically ordered list, the search operation can
considered, software may appear to be reusable from design be terminated once a node is found that contains a character in
point of view, but will not be reused in practice. the character field which is greater than or equal to the input
Data storage and communication systems typically handle data character. The termination node is initialized to contain a
that contains a significant amount of redundancy. Many character in the character field which is larger than all possible
techniques have been applied to decrease the amount of storage input characters, where a character equals 8 bits. In turn, with
needed for data and the amount of essential data that needs to this invention, the termination node always resides at the end of
be transmitted to provide the initial data. Thus, modern the lexicographically linked list. This positioning of the
techniques allow data to be transmitted in less time over a termination node guarantees the search operation will terminate
communications channel. It is common for compression to after finding a node in the linked list which is greater than or
reduce the size of a data file by a 2:1 ratio or better. equal to the input character without going off the end of the
linked list. The elimination of the end of the linked list check
The speed of compression and decompression is important in simplifies the logic and decreases processing time per input
that a compression technique may not be acceptable if the character.
computational overhead lowers the speed of communication
sufficiently to cause degraded system performance. For OPERATIONS;-
example, run-length encoding takes advantage of repeated
strings of a same character such as a space or zero. Thus, run- • An ordered list object is an ordered sequence of
zero or more elements of some type. If the all the • Storage efficiency
elements are of the same type, it is a homogeneous • Simple representation
ordered list, otherwise it is a heterogeneous ordered • Private data and link - cannot access data
list. from pointer to node
• Operations include • Public data, or public access functions -
• Checking if the list is empty violates encapsulation principle
• Finding the length of the list • Any function can access, not only
• Storing a new element at one end or a linked list manipulation functions
specified position in the list • Only linked list manipulation
• Retrieving an element from one end or a functions must manipulate the data
specified position in the list • Data class inside linked list class - cannot
• Retrieving elements of the list from one end add more data to linked list class without
to the other (iteration) adding more to every node.
• Removing an element at one end or a • Nested classes - does not provide reusability
specified position in the list of data class
• Comparing elements • Separate list class and data class, with linked
• Output the elements in order list manipulation functions as friends
• Reusable representation
• EXAMPLES OF SUBROUTINES • Circular Linked Lists
• The array ADT can be used to implement a • Representation
homogeneous ordered list ADT. • A dummy head node
• Complications in the implementation due to
the static nature of arrays. • Doubly Linked Lists
• Useful in some special cases, e.g., • Motivation
polynomials. • Can only move one way
• Hard to delete a known node
• Singly Linked Lists
• Hard to insert before a known node
• Motivation (vs Arrays)
• Representation
• Adding new data
• Ease of previously difficult operations
• Deleting data
• A dummy head node • Check if there is a node after or before
the iterator position
• Iterators
• Move the iterator forwards or
• Motivation
backwards
• Using member functions of the list class
• Get or set the data of the current node
• Some functions do not make sense for some
• Add a node before or after the current
instantiations of the template
node
• List class could become bulky
• Delete the node before or after the
• Class implementor has to predict all possible current node
needs
• Only one (or a fixed number) of iterators
• Class user has to understand implementation available per list
to add new ones, which violates data
• External iterators
abstraction
• An iterator class is made a friend of the node
• Iterators provide sequential access to data in nodes
and list classes
• Internal iterators
• An iterator object contains a pointer to a list
• Add another node pointer (the iterator) in object and a pointer to a node in that list.
the list class
• Member functions manipulate the node
• Add member functions to pointer.
• Set the iterator to the start or end
• Check if the iterator is at a node

LINKED LIST

A linked list is a data structure that consists of a sequence of data records such that in each record there is a field that contains a
reference (i.e., a link) to the next record in the sequence.

A linked list whose nodes contain two fields: an integer value and a link to the next node
Linked lists are among the simplest and most common data structures; they provide an easy implementation for several
important abstract data structures, including stacks, queues, associative arrays, and symbolic expressions.
The principal benefit of a linked list over a conventional array is that the order of the linked items may be different from the
order that the data items are stored in memory or on disk. For that reason, linked lists allow insertion and removal of nodes at
any point in the list, with a constant number of operations.
On the other hand, linked lists by themselves do not allow random access to the data, or any form of efficient indexing. Thus,
many basic operations — such as obtaining the last node of the list, or finding a node that contains a given datum, or locating the
place where a new node should be inserted — may require scanning most of the list elements.

reusability is the likelihood a segment of source code that can be used again to add new functionalities with slight or no
modification. Reusable modules and classes reduce implementation time, increase the likelihood that prior testing and use has
eliminated bugs and localizes code modifications when a change in implementation is required.
Subroutines or functions are the simplest form of reuse. A chunk of code is regularly organized using modules or namespaces
into layers. Proponents claim that objects and software components offer a more advanced form of reusability, although it has
been tough to objectively measure and define levels or scores of reusability.
The ability to reuse relies in an essential way on the ability to build larger things from smaller parts, and being able to identify
commonalities among those parts. Reusability is often a required characteristic of platform software. Reusability brings several
aspects to software development that do not need to be considered when reusability is not required.
Reusability implies some explicit management of build, packaging, distribution, installation, configuration, deployment,
maintenance and upgrade issues. If these issues are not considered, software may appear to be reusable from design point of
view, but will not be reused in practice.
Software reusability more specifically refers to design features of a software element (or collection of software elements) that
enhance its suitability for reuse.
A reusable launch system (or reusable launch vehicle, RLV) is a launch system which is capable of launching a launch vehicle
into space more than once. This contrasts with expendable launch systems, where each launch vehicle is launched once and then
discarded.
No true orbital reusable launch system is currently in use. The closest example is the partially reusable Space Shuttle. The
orbiter, which includes the main engines, and the two solid rocket boosters, are reused after several months of refitting work for
each launch. The external fuel drop tank is typically discarded, but it is possible for it be re-used in space for various
applications.

Reusability concepts

Single stage
There are two approaches to Single stage to orbit or SSTO. The rocket equation says that an SSTO vehicle needs a high mass
ratio. Mass ratio is defined as the mass of the fully fueled vehicle divided by the mass of the vehicle when empty (zero fuel
weight, ZFW).
One way to increase the mass ratio is to reduce the mass of the empty vehicle by using very lightweight structures and high
efficiency engines. This tends to push up maintenance costs as component reliability can be impaired, and makes reuse more
expensive to achieve. The margins are so small with this approach that there is uncertainty whether such a vehicle would be able
to carry any payload into orbit. Also, lightweight implies small vehicles, which in turn implies small payloads, increasing the cost
per kilogram of the payload.

Two or more stages to orbit


Two stage to orbit requires designing and building two independent vehicles and dealing with the interactions between them at
launch. Usually the second stage in launch vehicle is 5-10 times smaller than the first stage, although in biamese and triamese
approaches each vehicle is the same size.
In addition, the first stage needs to be returned to the launch site for it to be reused. This is usually proposed to be done by flying
a compromise trajectory that keeps the first stage above or close to the launch site at all times, or by using small airbreathing
engines to fly the vehicle back, or by recovering the first stage downrange and returning it some other way (often landing in the
sea, and returning it by ship.) Most techniques involve some performance penalty; these can require the first stage to be several
times larger for the same payload, although for recovery from downrange these penalties may be small.
The second stage is normally returned after flying one or more orbits and reentering.

Scaled Composites SpaceShipOne used horizontal landing after being launched from a carrier airplane
In this case the vehicle requires wings and undercarriage (unless landing at sea). This typically requires about 9-12% of the
landing vehicle to be wings; which in turn implies that the takeoff weight is higher and/or the payload smaller.
Concepts such as lifting bodies attempt to deal with the somewhat conflicting issues of reentry, hypersonic and subsonic flight; as
does the delta wing shape of the Space Shuttle.

Space Maintainer:-
The use of a space maintainer appliance, or restoration of a carious primary tooth that can then act as a natural space
maintainer, may potentially obviate the consequences of loss of arch length and the need for complex orthodontic treatment at a
later stage. Nevertheless, all space maintainer appliances are plaque retentive and may predispose to dental caries and gingival
inflammation. Space maintainer appliances may also impinge on the soft tissues, interfere with eruption of adjacent teeth,
fracture, and become dislodged or lost. This review article provides a summary of the available evidence, and considers the
indications for space maintenance.

BIBLIOGRAPHY
 WWW.GOOGLE.COM

 WWW.ANSWERS.COM

 WWW.GURUJI.COM

 WWW.ASK.COM

 WWW.WIKIPEDIA.COM

You might also like