Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c > #22037 > unrolled thread

linked list

Started byZhang Yuan <zhabgyuan1993@gmail.com>
First post2012-06-08 21:02 -0700
Last post2012-06-14 12:47 -0700
Articles 13 on this page of 33 — 11 participants

Back to article view | Back to comp.lang.c


Contents

  linked list Zhang Yuan <zhabgyuan1993@gmail.com> - 2012-06-08 21:02 -0700
    Re: linked list Kaz Kylheku <kaz@kylheku.com> - 2012-06-09 04:59 +0000
      Re: linked list Zhang Yuan <zhabgyuan1993@gmail.com> - 2012-06-08 22:13 -0700
      Re: linked list Ian Collins <ian-news@hotmail.com> - 2012-06-09 17:47 +1200
        Re: linked list Zhang Yuan <zhabgyuan1993@gmail.com> - 2012-06-08 22:59 -0700
          Re: linked list Ian Collins <ian-news@hotmail.com> - 2012-06-09 18:35 +1200
            Re: linked list Ike Naar <ike@sverige.freeshell.org> - 2012-06-09 06:53 +0000
              Re: linked list Zhang Yuan <zhabgyuan1993@gmail.com> - 2012-06-09 00:53 -0700
      Re: linked list 88888 Dihedral <dihedral88888@googlemail.com> - 2012-06-22 12:18 -0700
    Re: linked list Ike Naar <ike@sverige.freeshell.org> - 2012-06-09 05:34 +0000
      Re: linked list Zhang Yuan <zhabgyuan1993@gmail.com> - 2012-06-08 22:51 -0700
        Re: linked list Ike Naar <ike@sverige.freeshell.org> - 2012-06-09 06:45 +0000
          Re: linked list Zhang Yuan <zhabgyuan1993@gmail.com> - 2012-06-08 23:56 -0700
      Re: linked list Keith Thompson <kst-u@mib.org> - 2012-06-09 11:17 -0700
        Re: linked list Ike Naar <ike@iceland.freeshell.org> - 2012-06-09 22:02 +0000
    Re: linked list Ian Collins <ian-news@hotmail.com> - 2012-06-09 17:49 +1200
      Re: linked list Zhang Yuan <zhabgyuan1993@gmail.com> - 2012-06-08 22:53 -0700
        Re: linked list Ian Collins <ian-news@hotmail.com> - 2012-06-09 18:36 +1200
        Re: linked list Keith Thompson <kst-u@mib.org> - 2012-06-09 11:20 -0700
    Re: linked list pete <pfiland@mindspring.com> - 2012-06-09 06:49 -0400
      Re: linked list pete <pfiland@mindspring.com> - 2012-06-09 07:28 -0400
        Re: linked list Zhang Yuan <zhabgyuan1993@gmail.com> - 2012-06-09 07:57 -0700
          Re: linked list Ben Bacarisse <ben.usenet@bsb.me.uk> - 2012-06-09 19:16 +0100
          Re: linked list pete <pfiland@mindspring.com> - 2012-06-09 16:01 -0400
          Re: linked list pete <pfiland@mindspring.com> - 2012-06-09 16:50 -0400
            Re: linked list Zhang Yuan <zhabgyuan1993@gmail.com> - 2012-06-09 18:21 -0700
              Re: linked list pete <pfiland@mindspring.com> - 2012-06-10 00:11 -0400
                Re: linked list Zhang Yuan <zhabgyuan1993@gmail.com> - 2012-06-09 22:20 -0700
                  Re: linked list pete <pfiland@mindspring.com> - 2012-06-10 08:31 -0400
              Re: linked list nick_keighley_nospam@hotmail.com - 2012-06-11 06:10 -0700
                Re: linked list Zhang Yuan <zhabgyuan1993@gmail.com> - 2012-06-11 09:16 -0700
                Re: linked list Keith Thompson <kst-u@mib.org> - 2012-06-11 15:45 -0700
                  Re: linked list Michael Press <rubrum@pacbell.net> - 2012-06-14 12:47 -0700

Page 2 of 2 — ← Prev page 1 [2]


#22058

Frompete <pfiland@mindspring.com>
Date2012-06-09 07:28 -0400
Message-ID<4FD33350.63FA@mindspring.com>
In reply to#22057
pete wrote:
> 
> Zhang Yuan wrote:
> >
> > ----------------------------------------------------------------------------
> > #include<stdio.h>
> > #include<stdlib.h>
> > struct stu{
> >     int num;
> >     char name[12];
> >     int age[0];
> >     struct stu *next;
> >     };
> >
> > int main(){
> >
> > struct stu *curr,*head;
> >
> > head=(stu *)malloc(sizeof(stu));
> > curr=head;
> > scanf("%d",&(head->num));
> > curr->next=NULL;
> >
> > while(curr->num!=0){
> >         scanf("%s%d",curr->name,curr->age);
> >         curr=(stu *)malloc(sizeof(struct stu));
> >         scanf("%d",&(curr->num));
> >         curr->next=NULL;
> > }
> > return 0;
> > }
> >
> > --------------------------------------------------------------------------
> > it  doesn't work.When I debug:
> >
> > input :
> > 101 zhang 19
> >
> > the memory information:4 pictures
> > http://flic.kr/p/ccMQey
> >
> > why 0x6f17e0 change from 00-->13 unexpectedly.
> > I think the "*next" and "int age"storaged in different place.
> > but it looks like it overwrite?
> 
> #include <stdio.h>
> #include <stdlib.h>
> 
> struct stu{
>     struct stu *next;
>     int num;
>     char name[12];
>     int age;
>     };
> 
> int
> main(void)
> {
>     struct stu *curr,*head;
> 
>     head = malloc(sizeof *head);
>     if (head != NULL) {
>         curr = head;
>         puts("enter number");
>         scanf("%d", &(head -> num));
>         curr -> next = NULL;
>         while(curr -> num != 0){
>             puts("enter name and age");
>             scanf("%s%d", curr -> name, &(curr -> age));
>             curr = malloc(sizeof *curr);

That doesn't make any sense!

/* BEGIN new.c */

#include <stdio.h>
#include <stdlib.h>

struct stu{
    struct stu *next;
    int num;
    char name[12];
    int age;
    };

void stu_free(struct stu *head);
void stu_print(struct stu *head);

int 
main(void)
{
    struct stu *curr,*head;
    
    puts("/* BEGIN new.c */ output\n");
    head = malloc(sizeof *head);
    if (head != NULL) {
        curr = head;
        curr -> next = NULL;
        puts("enter number");
        if (1 > scanf("%d", &(head -> num))) {
            puts("\n\nscanf problem.\n\n");
            exit(EXIT_FAILURE);
        }
        while(curr -> num != 0) {
            puts("enter name and age");
            scanf("%s%d", curr -> name, &(curr -> age));
            if (1 > scanf("%d", &(head -> num))) {
                puts("\n\nscanf problem.\n\n");
                exit(EXIT_FAILURE);
            }
            curr -> next= malloc(sizeof *(curr -> next));
            if (curr -> next == NULL) {
                break;
            }
            curr = curr -> next;
            curr -> next = NULL;
            puts("enter number");
            scanf("%d", &(curr -> num));
        }
        *(curr -> name) = '\0';
        curr -> age = 0;
    }
    stu_print(head);
    stu_free(head);
    puts("\n/* END new.c */ output");
    return 0;
}


void 
stu_free(struct stu *head)
{
    struct stu *next;

    while (head != NULL) {
        next = head -> next;
        free(head);
        head = next;
    }
}

void 
stu_print(struct stu *head)
{
    while (head != NULL) {
        printf("\nnumber == %d\n", head -> num);
        printf("name is %s\n", head -> name);
        printf("age is %d\n", head -> age);
        head = head -> next;
    }
}


/* END new.c */

-- 
pete

[toc] | [prev] | [next] | [standalone]


#22065

FromZhang Yuan <zhabgyuan1993@gmail.com>
Date2012-06-09 07:57 -0700
Message-ID<15da424e-f82e-4580-ac2c-1fc8f7563c15@googlegroups.com>
In reply to#22058
On Saturday, June 9, 2012 7:28:16 PM UTC+8, pete wrote:
> pete wrote:
> > 
> > Zhang Yuan wrote:
> > >
> > > ----------------------------------------------------------------------------
> > > #include<stdio.h>
> > > #include<stdlib.h>
> > > struct stu{
> > >     int num;
> > >     char name[12];
> > >     int age[0];
> > >     struct stu *next;
> > >     };
> > >
> > > int main(){
> > >
> > > struct stu *curr,*head;
> > >
> > > head=(stu *)malloc(sizeof(stu));
> > > curr=head;
> > > scanf("%d",&(head->num));
> > > curr->next=NULL;
> > >
> > > while(curr->num!=0){
> > >         scanf("%s%d",curr->name,curr->age);
> > >         curr=(stu *)malloc(sizeof(struct stu));
> > >         scanf("%d",&(curr->num));
> > >         curr->next=NULL;
> > > }
> > > return 0;
> > > }
> > >
> > > --------------------------------------------------------------------------
> > > it  doesn't work.When I debug:
> > >
> > > input :
> > > 101 zhang 19
> > >
> > > the memory information:4 pictures
> > > http://flic.kr/p/ccMQey
> > >
> > > why 0x6f17e0 change from 00-->13 unexpectedly.
> > > I think the "*next" and "int age"storaged in different place.
> > > but it looks like it overwrite?
> > 
> > #include <stdio.h>
> > #include <stdlib.h>
> > 
> > struct stu{
> >     struct stu *next;
> >     int num;
> >     char name[12];
> >     int age;
> >     };
> > 
> > int
> > main(void)
> > {
> >     struct stu *curr,*head;
> > 
> >     head = malloc(sizeof *head);
> >     if (head != NULL) {
> >         curr = head;
> >         puts("enter number");
> >         scanf("%d", &(head -> num));
> >         curr -> next = NULL;
> >         while(curr -> num != 0){
> >             puts("enter name and age");
> >             scanf("%s%d", curr -> name, &(curr -> age));
> >             curr = malloc(sizeof *curr);
> 
> That doesn't make any sense!
> 
> /* BEGIN new.c */
> 
> #include <stdio.h>
> #include <stdlib.h>
> 
> struct stu{
>     struct stu *next;
>     int num;
>     char name[12];
>     int age;
>     };
> 
> void stu_free(struct stu *head);
> void stu_print(struct stu *head);
> 
> int 
> main(void)
> {
>     struct stu *curr,*head;
>     
>     puts("/* BEGIN new.c */ output\n");
>     head = malloc(sizeof *head);
>     if (head != NULL) {
>         curr = head;
>         curr -> next = NULL;
>         puts("enter number");
>         if (1 > scanf("%d", &(head -> num))) {
>             puts("\n\nscanf problem.\n\n");
>             exit(EXIT_FAILURE);
>         }
>         while(curr -> num != 0) {
>             puts("enter name and age");
>             scanf("%s%d", curr -> name, &(curr -> age));
>             if (1 > scanf("%d", &(head -> num))) {
>                 puts("\n\nscanf problem.\n\n");
>                 exit(EXIT_FAILURE);
>             }
>             curr -> next= malloc(sizeof *(curr -> next));
>             if (curr -> next == NULL) {
>                 break;
>             }
>             curr = curr -> next;
>             curr -> next = NULL;
>             puts("enter number");
>             scanf("%d", &(curr -> num));
>         }
>         *(curr -> name) = '\0';
>         curr -> age = 0;
>     }
>     stu_print(head);
>     stu_free(head);
>     puts("\n/* END new.c */ output");
>     return 0;
> }
> 
> 
> void 
> stu_free(struct stu *head)
> {
>     struct stu *next;
> 
>     while (head != NULL) {
>         next = head -> next;
>         free(head);
>         head = next;
>     }

Why not just free head? 


> }
> 
> void 
> stu_print(struct stu *head)
> {
>     while (head != NULL) {
>         printf("\nnumber == %d\n", head -> num);
>         printf("name is %s\n", head -> name);
>         printf("age is %d\n", head -> age);
>         head = head -> next;
>     }
> }
> 
> 
> /* END new.c */
> 
> -- 
> pete

[toc] | [prev] | [next] | [standalone]


#22071

FromBen Bacarisse <ben.usenet@bsb.me.uk>
Date2012-06-09 19:16 +0100
Message-ID<0.3aad2cc16ebcbcffba9e.20120609191651BST.87pq9873l9.fsf@bsb.me.uk>
In reply to#22065
Zhang Yuan <zhabgyuan1993@gmail.com> writes:

> On Saturday, June 9, 2012 7:28:16 PM UTC+8, pete wrote:
<snip>
>> void 
>> stu_free(struct stu *head)
>> {
>>     struct stu *next;
>> 
>>     while (head != NULL) {
>>         next = head -> next;
>>         free(head);
>>         head = next;
>>     }
>
> Why not just free head? 

Do you understand what pete's code is doing?  Are you saying that there
is a simpler why to write code that does the same thing (if,write it out
so it's clear to everyone exactly what you are suggesting), or are you
saying that pete's function does not need to do everything that it does
and thus can be sorter or simpler?

>> }

You might want to start sniping your replies so that they contain only
the parts needed to understand your comments.  It will make them easier
to read and simpler to reply to.

-- 
Ben.

[toc] | [prev] | [next] | [standalone]


#22077

Frompete <pfiland@mindspring.com>
Date2012-06-09 16:01 -0400
Message-ID<4FD3AB92.4183@mindspring.com>
In reply to#22065
Zhang Yuan wrote:
> 
> On Saturday, June 9, 2012 7:28:16 PM UTC+8, pete wrote:
> > pete wrote:

> > void
> > stu_free(struct stu *head)
> > {
> >     struct stu *next;
> >
> >     while (head != NULL) {
> >         next = head -> next;
> >         free(head);
> >         head = next;
> >     }
> 
> Why not just free head?

Because just freeing head, 
would leave the rest of the nodes in the linked list,
inaccessible yet still allocated.

-- 
pete

[toc] | [prev] | [next] | [standalone]


#22080

Frompete <pfiland@mindspring.com>
Date2012-06-09 16:50 -0400
Message-ID<4FD3B6FB.129B@mindspring.com>
In reply to#22065
Zhang Yuan wrote:
> 
> On Saturday, June 9, 2012 7:28:16 PM UTC+8, pete wrote:
> > pete wrote:

> > >         while(curr -> num != 0){
> > >             puts("enter name and age");
> > >             scanf("%s%d", curr -> name, &(curr -> age));
> > >             curr = malloc(sizeof *curr);
> >
> > That doesn't make any sense!

> >             scanf("%s%d", curr -> name, &(curr -> age));
> >             if (1 > scanf("%d", &(head -> num))) {

And then I screwed it up again!

/* BEGIN new.c */

#include <stdio.h>
#include <stdlib.h>

struct stu {
    struct stu *next;
    int num;
    int age;
    char name[12];
};

void stu_free(struct stu *head);
void stu_print(struct stu *head);

int 
main(void)
{
    struct stu *curr, *head;
    
    puts("/* BEGIN new.c */ output\n");
    head = malloc(sizeof *head);
    if (head != NULL) {
        curr = head;
        curr -> next = NULL;
        puts("enter number");
        if (1 > scanf("%d", &(head -> num))) {
            puts("\n\nscanf problem.\n\n");
            exit(EXIT_FAILURE);
        }
        while(curr -> num != 0) {
            puts("enter name and age");
            if (1 > scanf("%s%d", curr -> name, &(curr -> age))) {
                stu_free(head);
                puts("\n\nscanf problem.\n\n");
                exit(EXIT_FAILURE);
            }
            curr -> next= malloc(sizeof *(curr -> next));
            if (curr -> next == NULL) {
                break;
            }
            curr = curr -> next;
            curr -> next = NULL;
            puts("enter number");
            scanf("%d", &(curr -> num));
        }
        *(curr -> name) = '\0';
        curr -> age = 0;
    }
    stu_print(head);
    stu_free(head);
    puts("\n/* END new.c */ output");
    return 0;
}


void 
stu_free(struct stu *head)
{
    struct stu *next;

    while (head != NULL) {
        next = head -> next;
        free(head);
        head = next;
    }
}

void 
stu_print(struct stu *head)
{
    while (head != NULL) {
        printf("\nnumber is %d\n", head -> num);
        printf("name   is %s\n", head -> name);
        printf("age    is %d\n", head -> age);
        head = head -> next;
    }
}


/* END new.c */



-- 
pete

[toc] | [prev] | [next] | [standalone]


#22084

FromZhang Yuan <zhabgyuan1993@gmail.com>
Date2012-06-09 18:21 -0700
Message-ID<4a0fd5a3-cf97-44d5-befc-75aa5c59b000@googlegroups.com>
In reply to#22080
On Sunday, June 10, 2012 4:50:03 AM UTC+8, pete wrote:
> Zhang Yuan wrote:
> > 
> > On Saturday, June 9, 2012 7:28:16 PM UTC+8, pete wrote:
> > > pete wrote:
> 
> > > >         while(curr -> num != 0){
> > > >             puts("enter name and age");
> > > >             scanf("%s%d", curr -> name, &(curr -> age));
> > > >             curr = malloc(sizeof *curr);
> > >
> > > That doesn't make any sense!
> 
> > >             scanf("%s%d", curr -> name, &(curr -> age));
> > >             if (1 > scanf("%d", &(head -> num))) {
> 
> And then I screwed it up again!
> 
> /* BEGIN new.c */
> 
> #include <stdio.h>
> #include <stdlib.h>
> 
> struct stu {
>     struct stu *next;
>     int num;
>     int age;
>     char name[12];
> };
> 
> void stu_free(struct stu *head);
> void stu_print(struct stu *head);
> 
> int 
> main(void)
> {
>     struct stu *curr, *head;
>     
>     puts("/* BEGIN new.c */ output\n");
>     head = malloc(sizeof *head);
>     if (head != NULL) {
>         curr = head;
>         curr -> next = NULL;
>         puts("enter number");
>         if (1 > scanf("%d", &(head -> num))) {
>             puts("\n\nscanf problem.\n\n");
>             exit(EXIT_FAILURE);
>         }
>         while(curr -> num != 0) {
>             puts("enter name and age");
>             if (1 > scanf("%s%d", curr -> name, &(curr -> age))) {
>                 stu_free(head);
>                 puts("\n\nscanf problem.\n\n");
>                 exit(EXIT_FAILURE);
>             }
>             curr -> next= malloc(sizeof *(curr -> next));
>             if (curr -> next == NULL) {
>                 break;
>             }
>             curr = curr -> next;
>             curr -> next = NULL;
>             puts("enter number");
>             scanf("%d", &(curr -> num));
>         }
>         *(curr -> name) = '\0';
>         curr -> age = 0;
>     }
>     stu_print(head);
>     stu_free(head);
>     puts("\n/* END new.c */ output");
>     return 0;
> }
> 
> 
> void 
> stu_free(struct stu *head)
> {
>     struct stu *next;
> 
>     while (head != NULL) {
>         next = head -> next;
>         free(head);
>         head = next;
>     }
> }
> 
> void 
> stu_print(struct stu *head)
> {
>     while (head != NULL) {
>         printf("\nnumber is %d\n", head -> num);
>         printf("name   is %s\n", head -> name);
>         printf("age    is %d\n", head -> age);
>         head = head -> next;
>     }
> }
> 
> 
> /* END new.c */
> 
> 
> 
> -- 
> pete

I learn a lot!
Your code is very comprehensive.
I found the difference between natives and foreigners.
I post the same question on comp.lang.c and home forum.
This is explicit and penetrate deeply.
Thank you!
I want to know if there exist some standards about linked list?
 

[toc] | [prev] | [next] | [standalone]


#22086

Frompete <pfiland@mindspring.com>
Date2012-06-10 00:11 -0400
Message-ID<4FD41E8E.53D9@mindspring.com>
In reply to#22084
Zhang Yuan wrote:
> 
> On Sunday, June 10, 2012 4:50:03 AM UTC+8, pete wrote:

> > /* BEGIN new.c */

> I learn a lot!
> Your code is very comprehensive.
> I found the difference between natives and foreigners.
> I post the same question on comp.lang.c and home forum.
> This is explicit and penetrate deeply.
> Thank you!

You're welcome.

> I want to know if there exist some standards about linked list?

I don't know about that.

I learned what I know about linked lists
mostly from this newsgroup 
and also from working with linked lists.

I have some examples of linked list programs here:
   http://www.mindspring.com/~pfilandr/C/lists_and_files/

These are library files:
   file_lib.c
   file_lib.h
   list_io.c
   list_io.h
   list_lib.c
   list_lib.h
   list_type.h

These are files which use the library files:
   file_collate.c
   file_mul.c
   file_parse.c
   file_sort.c

Those programs mostly serve me as examples
of how to work with lists and files,
in case I forget.

-- 
pete

[toc] | [prev] | [next] | [standalone]


#22087

FromZhang Yuan <zhabgyuan1993@gmail.com>
Date2012-06-09 22:20 -0700
Message-ID<8711e26f-a6ce-415c-bbdd-fefe51ccc8d2@googlegroups.com>
In reply to#22086
On Sunday, June 10, 2012 12:11:58 PM UTC+8, pete wrote:
> Zhang Yuan wrote:
> > 
> > On Sunday, June 10, 2012 4:50:03 AM UTC+8, pete wrote:
> 
> > > /* BEGIN new.c */
> 
> > I learn a lot!
> > Your code is very comprehensive.
> > I found the difference between natives and foreigners.
> > I post the same question on comp.lang.c and home forum.
> > This is explicit and penetrate deeply.
> > Thank you!
> 
> You're welcome.
> 
> > I want to know if there exist some standards about linked list?
> 
> I don't know about that.
> 
> I learned what I know about linked lists
> mostly from this newsgroup 
> and also from working with linked lists.
> 
> I have some examples of linked list programs here:
>    http://www.mindspring.com/~pfilandr/C/lists_and_files/
> 
> These are library files:
>    file_lib.c
>    file_lib.h
>    list_io.c
>    list_io.h
>    list_lib.c
>    list_lib.h
>    list_type.h
> 
> These are files which use the library files:
>    file_collate.c
>    file_mul.c
>    file_parse.c
>    file_sort.c
> 
> Those programs mostly serve me as examples
> of how to work with lists and files,
> in case I forget.
> 
> -- 
> pete

thank you.
I will try my best to learn.

Ps:I just look up your photo in New York,1998.Big fish!

[toc] | [prev] | [next] | [standalone]


#22091

Frompete <pfiland@mindspring.com>
Date2012-06-10 08:31 -0400
Message-ID<4FD493A5.2CEF@mindspring.com>
In reply to#22087
Zhang Yuan wrote:
> 
> On Sunday, June 10, 2012 12:11:58 PM UTC+8, pete wrote:

> > These are files which use the library files:
> >    file_collate.c
> >    file_mul.c
> >    file_parse.c
> >    file_sort.c
> >
> > Those programs mostly serve me as examples
> > of how to work with lists and files,
> > in case I forget.
> thank you.
> I will try my best to learn.

You're welcome.

I think file_sort.c is the simplest.
Then file_mul.c and 
then file_parse.c.
file_collate.c is a little complicated.
 
> Ps:I just look up your photo in New York,1998.Big fish!

I was wading in South Sandy Creek for that one.
I had her on line for 15 minutes, 
during which she jumped completely out of the water twice.

-- 
pete

[toc] | [prev] | [next] | [standalone]


#22110

Fromnick_keighley_nospam@hotmail.com
Date2012-06-11 06:10 -0700
Message-ID<13aec203-2b27-4688-83f2-936d429877b8@googlegroups.com>
In reply to#22084
On Sunday, June 10, 2012 2:21:23 AM UTC+1, Zhang Yuan wrote:

<snip>

> I learn a lot!
> Your code is very comprehensive.
> I found the difference between natives and foreigners.
> I post the same question on comp.lang.c and home forum.
> This is explicit and penetrate deeply.

the average age and years experience on comp.lang.c (clc) is probably 
higher than your home forum. Or put it another way- clc has an ageing demographic!

> Thank you!
> I want to know if there exist some standards about linked list?

any book on algorithms. Sedgewick "Algorithms" is quite readable, 
Knuth "The Art of Computer programming" is rather thorough.
The wikipedia entry for "Linked List" looks ok (I haven't read 
it carefully).

[toc] | [prev] | [next] | [standalone]


#22117

FromZhang Yuan <zhabgyuan1993@gmail.com>
Date2012-06-11 09:16 -0700
Message-ID<1565174b-d374-4ca1-a36b-a7a503f1f589@googlegroups.com>
In reply to#22110
On Monday, June 11, 2012 9:10:05 PM UTC+8, nick_keigh...@hotmail.com wrote:
> On Sunday, June 10, 2012 2:21:23 AM UTC+1, Zhang Yuan wrote:
> 
> <snip>
> 
> > I learn a lot!
> > Your code is very comprehensive.
> > I found the difference between natives and foreigners.
> > I post the same question on comp.lang.c and home forum.
> > This is explicit and penetrate deeply.
> 
> the average age and years experience on comp.lang.c (clc) is probably 
> higher than your home forum. Or put it another way- clc has an ageing demographic!
> 
> > Thank you!
> > I want to know if there exist some standards about linked list?
> 
> any book on algorithms. Sedgewick "Algorithms" is quite readable, 
> Knuth "The Art of Computer programming" is rather thorough.
> The wikipedia entry for "Linked List" looks ok (I haven't read 
> it carefully).

Thanks,I haven't studied algorithms.
It's time to start.


I want to participate in some open source project.
I found some in github,but quite big for me.
Is there any proper programs i can join in?
Thanks.

[toc] | [prev] | [next] | [standalone]


#22128

FromKeith Thompson <kst-u@mib.org>
Date2012-06-11 15:45 -0700
Message-ID<lnk3zda2nn.fsf@nuthaus.mib.org>
In reply to#22110
nick_keighley_nospam@hotmail.com writes:
> On Sunday, June 10, 2012 2:21:23 AM UTC+1, Zhang Yuan wrote:
> <snip>
>
>> I learn a lot!
>> Your code is very comprehensive.
>> I found the difference between natives and foreigners.
>> I post the same question on comp.lang.c and home forum.
>> This is explicit and penetrate deeply.
>
> the average age and years experience on comp.lang.c (clc) is probably 
> higher than your home forum. Or put it another way- clc has an ageing demographic!
>
>> Thank you!
>> I want to know if there exist some standards about linked list?
>
> any book on algorithms. Sedgewick "Algorithms" is quite readable, 
> Knuth "The Art of Computer programming" is rather thorough.
> The wikipedia entry for "Linked List" looks ok (I haven't read 
> it carefully).

Knuth is *extremely* thorough, but it's not a tutorial.

-- 
Keith Thompson (The_Other_Keith) kst-u@mib.org  <http://www.ghoti.net/~kst>
    Will write code for food.
"We must do something.  This is something.  Therefore, we must do this."
    -- Antony Jay and Jonathan Lynn, "Yes Minister"

[toc] | [prev] | [next] | [standalone]


#22269

FromMichael Press <rubrum@pacbell.net>
Date2012-06-14 12:47 -0700
Message-ID<rubrum-02C06C.12474014062012@news.albasani.net>
In reply to#22128
In article <lnk3zda2nn.fsf@nuthaus.mib.org>,
 Keith Thompson <kst-u@mib.org> wrote:

> nick_keighley_nospam@hotmail.com writes:
> > On Sunday, June 10, 2012 2:21:23 AM UTC+1, Zhang Yuan wrote:
> > <snip>
> >
> >> I learn a lot!
> >> Your code is very comprehensive.
> >> I found the difference between natives and foreigners.
> >> I post the same question on comp.lang.c and home forum.
> >> This is explicit and penetrate deeply.
> >
> > the average age and years experience on comp.lang.c (clc) is probably 
> > higher than your home forum. Or put it another way- clc has an ageing demographic!
> >
> >> Thank you!
> >> I want to know if there exist some standards about linked list?
> >
> > any book on algorithms. Sedgewick "Algorithms" is quite readable, 
> > Knuth "The Art of Computer programming" is rather thorough.
> > The wikipedia entry for "Linked List" looks ok (I haven't read 
> > it carefully).
> 
> Knuth is *extremely* thorough, but it's not a tutorial.

Why not? It is expository and there are exercises to work.

-- 
Michael Press

[toc] | [prev] | [standalone]


Page 2 of 2 — ← Prev page 1 [2]

Back to top | Article view | comp.lang.c


csiph-web