散列、贪心总结

散列

1、需要模拟实现散列的情况

     Liner Probing:对H(key)地址 + i 之后 mod Size 得新地址。

     Quadratic probing: 对H(key)地址 + i^2 之后 mod Size 得新地址。

2、使用散列表

     数字哈希:数组可直接使用。

     map<key, val> 配合count方法和insert方法。

     字符串hash:将字符串映射为一个整数,再用该整数作为hash表地址。字符串仅由大写字母构成,则将其视为0-25的数字,转换为26进制。若有大小写,则为52进制。 若再纯大写字母后面指定附着1位数字(ABCD3),则先对字母部分转换整数,再 * 10 + 末位数字。

     单个字符哈希:将ASCII值做映射即可(0 - 127)。

3、   使用散列表时注意防止越界,如已知 hashTB[i],需要寻找 hashTB[ N - hashTB[i] ]。

 

贪心

1、把整个过程分成许多步,在每一步中都选择最优的决策。

2、关键是要能想到某道题用贪心的思路来做。

转载于:https://www.cnblogs.com/zhuqiwei-blog/p/8533565.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值