C语言建立一个结构体索引

定义了一个学生信息结构体,怎么建立一个链表实现以Sno学生学号为索引,把一个学生的信息关联起来作为一个整体,实现对这一个学生信息的增删查找?

 struct Student         //定义基本表——Student
{
    long long int Sno;      //学生学号
    char Sname[20];    //学生姓名
    char Ssex[6];      //学生性别
    int Sage;          //学生年龄
    char Sdept[15];    //学生所在系
    STUDENT_DEF *next;
};

http://www.2cto.com/kf/201312/261194.html
把 ElemType 换成Student

http://www.2cto.com/kf/201312/261194.html把 ElemType 换成Student

是不是我用哈希表的话,更方便找关键字啊

用哈希肯定快啊,时间复杂度O(1),链表的话不得O(n)呐

将节点按照学号先排好序,之后使用二分查找指定学号,进行更改即可。时间复杂度logn