DSA Linkedlists
-
Upload
sharad-agarwal -
Category
Documents
-
view
212 -
download
0
Transcript of DSA Linkedlists
![Page 1: DSA Linkedlists](https://reader035.fdocuments.in/reader035/viewer/2022081909/577c86041a28abe054bf7978/html5/thumbnails/1.jpg)
8/19/2019 DSA Linkedlists
http://slidepdf.com/reader/full/dsa-linkedlists 1/4
Data Structures And Algorithms Assignment 24/07/2015
1.
struct node {
struct node* prev
int data
struct node* ne!t
"
Insertion at front:
#oid insert$%ront & '
{
i% &%irst (( last )) %irst (( null'
{
print%&empt+,'
head(tail(ne-node head ne!t ( tailne!t ( null
headprev(tailprev(null
"
else
{
ne-nodene!t(head
headprev(ne-node
head(ne-node
headprev(tail
tailne!t(head
""
Insertion at end:
#oid insert$end& '
{
i% &%irst (( last )) %irst (( null'
{
print%&empt+,'
head(tail(ne-node head ne!t ( tailne!t ( null
headprev(tailprev(null
"
else
{
tailne!t(ne-node
ne-nodeprev(tail
tail(ne-node
headprev(tail
tailne!t(head
""
![Page 2: DSA Linkedlists](https://reader035.fdocuments.in/reader035/viewer/2022081909/577c86041a28abe054bf7978/html5/thumbnails/2.jpg)
8/19/2019 DSA Linkedlists
http://slidepdf.com/reader/full/dsa-linkedlists 2/4
Insertion anywhere:
#oid insert$pos & '
{
i% &pos((1'
{
insert$%ront&'
"else
{
-hile &count ( pos 1 )) tempne!t ( head'
{
count
temp ( tempne!t
i% &tempne!t (( head )) count pos 1'
{
cout, 3nvalid osition...,
"
else i% &tempne!t (( head )) count (( pos 1'
{
insert$end&'
"
else
{
ne-nodene!t ( tempne!t
ne-nodeprev ( temp
tempne!tprev ( ne-node
tempne!t ( ne-node
"
"
"
Deletion at beginning
#oid delete$%ront &'
{
start ( startrptr
startlptr ( end
endrptr ( start
%ree&temp'
"
![Page 3: DSA Linkedlists](https://reader035.fdocuments.in/reader035/viewer/2022081909/577c86041a28abe054bf7978/html5/thumbnails/3.jpg)
8/19/2019 DSA Linkedlists
http://slidepdf.com/reader/full/dsa-linkedlists 3/4
Deletion at end
#oid delete$end&'
{
end ( endlptr
endrptr ( start
startlptr ( end
%ree&temp'
"
Deletion anywhere
void delete&'
{
i% &pos (( 1'
{
delete$%ront&'
"
else
{
-hile &count ( pos )) temp ( end'
{
prev ( temp
temp ( temprptr
count
i% &temp (( end )) count pos 1'
{
cout,3nvalid osition.,
"
else i% &temp (( end )) count (( pos'
{
delete$end&'
"
else
{
prevrptr ( temprptr
temprptrlptr ( prev
%ree&temp'
"
" "
![Page 4: DSA Linkedlists](https://reader035.fdocuments.in/reader035/viewer/2022081909/577c86041a28abe054bf7978/html5/thumbnails/4.jpg)
8/19/2019 DSA Linkedlists
http://slidepdf.com/reader/full/dsa-linkedlists 4/4