943,965 Members | Top Members by Rank

Ad:
  • C Discussion Thread
  • Unsolved
  • Views: 9252
  • C RSS
Aug 30th, 2004
2

circular link list

Expand Post »
insert a node in circular link list without traversing it.

you have to insert the node at any place "without traversing it

help me out!!! in this
Similar Threads
Reputation Points: 14
Solved Threads: 0
Newbie Poster
apurva agarwal is offline Offline
13 posts
since Aug 2004
Aug 30th, 2004
2

Re: circular link list

If you want to insert a node a node at a particular position, You must know the key value or the distance from head (or) tail. In both the cases you have to traverse the list. If the memory is not dynamic then, you can just add the distance*sizeofnode to the head and insert the node there.

If you don't consider the position of insertion, the answer becomes childish.
Reputation Points: 12
Solved Threads: 0
Newbie Poster
ganesh is offline Offline
2 posts
since Aug 2004
Aug 30th, 2004
2

Re: circular link list

you can do it as follows, use a pointer to point to the last node " consider the list as a queue " of the list consider it's name is ((( last ))) and the node you want to add is ((( index ))) and define another pointer ((( temp )))

then :

temp = last;
last->pointer = index;
last = index;
last -> pointer = temp->pointer;

and then have fun... :surprised
Reputation Points: 12
Solved Threads: 0
Newbie Poster
wild_potatos is offline Offline
4 posts
since Aug 2004
Aug 30th, 2004
1

Re: circular link list

Huh? It sounds like the assignment is, given a node in the target list, insert a new node into it. Otherwise you'd have an assignment like "insert in sorted order"

So, given a target node called 'target' and you want to insert 'toBeInserted' you generally need to:

A) Remove the toBeInserted node from whatever list its on
B) Add it to the new list before or after 'target', whichever is appropriate.

And the general steps for removal are (with the current node bing 'this'):

set prior's next to this next
set next's prior to be this' prior
set this' next to this
set this' prior to prior

and to insert before target you do something like this:

this' next is target
this' prior is target's prior
target's prior is this
this' prior's next is this

(to insert after is similar, but slightly different of course)

Hope that helps!

(note to moderator's: trying not to do the assignment, but to explain it. Walks a fine line, there)
Reputation Points: 36
Solved Threads: 11
Posting Pro in Training
Chainsaw is offline Offline
436 posts
since Jun 2004
Aug 30th, 2004
0

Re: circular link list

Oops! Bug! The last line in 'general steps for removal are' should read:
set this' prior to this (not to prior)
Reputation Points: 36
Solved Threads: 11
Posting Pro in Training
Chainsaw is offline Offline
436 posts
since Jun 2004
Aug 30th, 2004
0

Re: circular link list

well explain it in amore simple manner i could not reall yget the whole of it
Reputation Points: 14
Solved Threads: 0
Newbie Poster
apurva agarwal is offline Offline
13 posts
since Aug 2004
Aug 30th, 2004
0

Re: circular link list

:-(

I guess I should stop answering questions with anything but Google answers. Here's what Google suggests for "circular linked list insertion algorithm":

http://www.greatsnakes.com/savannah/clist.asp
Reputation Points: 36
Solved Threads: 11
Posting Pro in Training
Chainsaw is offline Offline
436 posts
since Jun 2004

This thread is more than three months old

No one has posted to this discussion for at least three months. Please let old threads die and do not reply to them unless you feel you have something new and valuable to contribute that absolutely must be added to make the discussion complete. Otherwise, please start a new thread in this forum instead.
Message:
Previous Thread in C Forum Timeline: Help in Input output C files
Next Thread in C Forum Timeline: C programming question





About Us | Contact Us | Advertise | Acceptable Use Policy
Forum Index | Build Custom RSS Feed


Follow us on Twitter


© 2011 DaniWeb® LLC