Thursday, May 24, 2007

How to compare two linked lists? Write a C program to compare two linked lists.

Here is a simple C program to accomplish the same.


int compare_linked_lists(struct node *q, struct node *r)
{
static int flag;

if((q==NULL ) && (r==NULL))
{
flag=1;
}
else
{
if(q==NULL || r==NULL)
{
flag=0;
}
if(q->data!=r->data)
{
flag=0;
}
else
{
compare_linked_lists(q->link,r->link);
}
}
return(flag);
}



Another way is to do it on similar lines as strcmp() compares two strings, character by character (here each node is like a character).

33 comments:

  1. hey.. keep up d good work in dis blog :) by d way.. i ve a more compact recursive soln.. plz tell me if u find any bug..

    int comp(struct node *p,struct node *q)
    {
    if(!p&&!q)
    return 1;
    if((!p&&q)||(!q&&p))
    return 0;
    return((p->info==q->info)&&(comp(p->link,q->link)));
    }

    Lol,
    Me

    ReplyDelete
  2. Hi,
    Gud job dude.
    I have a doubt that this function would work in all conditions.
    check the else part
    else
    {
    if(q==NULL || r==NULL)
    {
    flag=0;
    }
    if(q->data!=r->data)
    {
    flag=0;
    }
    when q is NULL but r is not NULL it will come to the above else part. then it will check the first if condition and make the flag 0
    now it will come to the second if condition and try to access the q->data. here q is NULL and it is trying to accesses q->data so it will crash.

    Please pardon me if i was wrong somewhere.

    Thanks and Regards,
    Sandy

    ReplyDelete
  3. More Compact
    int comp(struct node *p,struct node *q)
    {
    if(!p&&!q)
    return 1;
    if((!p)||(!q)) /*LOL*/
    return 0;
    return((p->info==q->info)&&(comp(p->link,q->link)));
    }

    ReplyDelete
  4. Thanks a lot!!Good job!! It is a very good collection!!

    ReplyDelete
  5. Bool Compare(Node *a, Node* b) {
    If (a== NULL && b== NULL) {
    Return 0;
    } else if (a== NULL) {
    return -1;
    } else if (b == NULL) {
    return 1;
    }

    while (a != NULL && b!= NULL) {
    lastCompare = compare(a.data, b.data);
    if (lastCompare != 0) {
    return lastCompare;
    }
    A = a->next;
    B = b->next;
    }

    if (a== NULL && b== NULL) {
    Return lastCompare;
    } else if (a== NULL) {
    return -1;
    } else if (b == NULL) {
    return 1;
    }
    }

    ReplyDelete
  6. if(q==NULL || r==NULL)
    {
    flag=0;
    return(flag); -->[to avoid crash when
    either q or r is NULL]
    }
    Please correct if i am wrong

    ReplyDelete
  7. buy tramadol online tramadol hcl 50 mg po tab - buy tramadol hydrochloride online usa

    ReplyDelete
  8. generic xanax xanax bars 15 - buy xanax generic online

    ReplyDelete
  9. buy tramadol online tramadol withdrawal long symptoms - can tramadol overdose fatal

    ReplyDelete
  10. buy tramadol with cod tramadol dosage for people - buy tramadol 100mg

    ReplyDelete
  11. buy tramadol online tramadol for dogs and people the same - generic name for tramadol

    ReplyDelete
  12. buy tramadol online buy tramadol 200mg online - tramadol 50mg side effects

    ReplyDelete
  13. cheap tadalafil cialis no effect - can i order cialis online

    ReplyDelete
  14. buy tramadol online tramadol extended release half life - buy tramadol no prescription usa

    ReplyDelete
  15. cialis online buy cialis online fast shipping generic - cialis 2.5 mg price

    ReplyDelete
  16. buy cialis online cialis online rezeptfrei kaufen - cialis online is it safe

    ReplyDelete
  17. cialis cost cialis online without - cialis 30 day free trial coupon

    ReplyDelete
  18. http://landvoicelearning.com/#57594 tramadol dosage schedule - buy tramadol in missouri

    ReplyDelete
  19. learn how to buy tramdadol buy tramadol online no prescription - generic tramadol online no prescription

    ReplyDelete
  20. 07 prednisone asthma - prednisone 5mg http://www.prednisoneonlinerx.net/index.html, [url=http://www.prednisoneonlinerx.net/index.html]prednisone acne [/url]

    ReplyDelete
  21. buy tramadol online tramadol for dogs expiration date - buy tramadol usa pharmacy

    ReplyDelete
  22. buy tramadol buy tramadol online cheap - buy tramadol forum

    ReplyDelete
  23. http://reidmoody.com/#65473 lorazepam online no prescription - normal daily dosage ativan

    ReplyDelete
  24. buy ativan online side effects generic ativan - kicking ativan addiction

    ReplyDelete
  25. buy tramadol online tramadol medication - can get high tramadol 50mg

    ReplyDelete
  26. xanax 2mg do xanax side effects go away - xanax side effects day after

    ReplyDelete
  27. xanax medication xanax vs generic brands - xanax bars how long in system

    ReplyDelete
  28. Wow! This blog looks just like my old one! It's on a totally different topic but it has pretty much the same page layout and design. Great choice of colors!

    My web site - the tao of badass attraction system

    ReplyDelete
  29. After looking at a handful of the articles on your website, I honestly like your technique of writing a blog.
    I bookmarked it to my bookmark site list and will be checking back soon.
    Please visit my web site as well and let me know your opinion.



    Take a look at my website :: tao badass ezgprodurl

    ReplyDelete
  30. Тhe write-up features verified useful to me.
    It’s very eduсatіonal and уou really аre obviοusly quіtе
    well-infoгmеd of this type. You pοssess
    eхpoѕеd ouг eyes fог уou to varying viеws on this kіnd of matter uѕіng intгiquing, nοtable and reliable written сontent.


    Visit my blog :: valium

    ReplyDelete
  31. I got this site from my buddy who shared with me
    about this web page and at the moment this time I am visiting this web page and
    reading very informative articles at this time.


    Feel free to surf to my page ... website

    ReplyDelete
  32. http://www.achildsplace.org/banners/tramadolonline/#5962 buy tramadol online no prescription cod - buy tramadolcod fedex

    ReplyDelete
  33. The post provides verifіeԁ helpful to myself.

    Ιt’ѕ extremely informative anԁ you aгe ceгtainly
    really eduсаted of thіs tуpe.
    Yοu have got pοpped my personal fасe to numerous views on this kind of matteг using intriguing, notablе аnd sound content mateгіal.


    Also vіsit my page Http://Coisas.Janjos.Com/Index.Php/Utilizador:CedricH90

    ReplyDelete