2012年10月20日
摘要: 问题提出:假如一个结构体,记录有学号,姓名。现在内存块中存在着一批此类结构体。如果已知一个学号,要从这些结构体中找出对应的姓名。问题解决方法:如果使用链表保存这些结构体,就要遍历这个链表中的结构体,比较每个结构体的学号成员,如果相等就返回这个结构体,从而得到结构体的姓名成员。但是遍历效率太低,浪费cpu,有点费电。不如使用hash表直接定位到对应的结构体,而不必遍历。具体做法见代码。说明如下1.hash表的构建:除留余数法。2,冲突处理:开放定址法。如果把hash表大小和元素个数定成一样大小,则一点也不浪费空间。3.如果预先不知道数组的大小,那几个全局数组可以使用vector代替。4.这是手工 阅读全文
posted @ 2012-10-20 07:36 _song 阅读(366) 评论(0) 推荐(0) 编辑