算法——查找表

查找,根据一个值查找另一个值,value值可以是容器,结构,这样可查找的元素就更多;

哈希冲突:

主关键字:可以唯一的标识一个记录的关键字,如准考证号;

此关键词:可以识别若干记录的关键字是此关键字,如一个姓名对应多个学生信息;

此关键字容易引发哈希冲突;

 查找成功:得到信息或指示该记录在查找表中的位置;

查找失败:得到空指针或空记录;

unordered_map<string,OLG>,根据准考证号(string)查找其余的信息(各科成绩,姓名等)

struct OLG
{
string     zhun_kao_zheng;
string     name;
int        zheng_zhi;
int        yu_wen;
int        wai_yu;
int        shu_xue;
int        wu_li;
int        hua_xue;
int        sheng_wu;
int        zong_fen;   
};

unordered_map<string,OLG>map;
string na="zhang san";
cout<<map[na].zheng_zhi;//找到张三的政治分数

查找操作:

查询 元素是否在表中;

检索 元素的各种属性;

插入 在查找表中插入一个元素;

删除 删除一个元素;

 查找算法评价指标:关键字的平均比较次数,也称平均查找长度;每个关键字查找数的总和除以关键子数目;

 

 

查找的关键是:如何提高查找效率; 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值