精确匹配与模糊匹配有什么区别
答案:1 悬赏:70 手机版
解决时间 2021-02-25 04:15
- 提问者网友:回忆在搜索
- 2021-02-24 15:06
精确匹配与模糊匹配有什么区别
最佳答案
- 五星知识达人网友:长青诗
- 2021-02-24 15:59
本质区别就是查找方式不同。
近似匹配使用的是二分法(或叫折半法)查找。要求table_array的首列必须按升序排列。
所谓二分法,就是先取数组的中间值与查找值比较,若查找值大于中间值,则在后一半数组中继续按这种方式查。如果查找值小于中间值,就会在前一半里继续找,直到找到一个匹配(或接近,就是帮助里说在找不到精确匹配值情况下,返回小于查找值e 的最大值)值。
所以,如果table_array不是升序排列的话,这个函数总能返回一个值,但这个值不一定正确。
但是,若查找值正好落在二分法的节点上,就有可能返回正确值了。
数字的顺序不用说了,字符的顺序按AscII码顺序,汉字则是按拼音顺序。
精确匹配用的是顺序查找,即从头到尾一个一个比较。找到就找到了,找不到就返回错误(#N/A表示找不到),不会返回近似值。
近似匹配使用的是二分法(或叫折半法)查找。要求table_array的首列必须按升序排列。
所谓二分法,就是先取数组的中间值与查找值比较,若查找值大于中间值,则在后一半数组中继续按这种方式查。如果查找值小于中间值,就会在前一半里继续找,直到找到一个匹配(或接近,就是帮助里说在找不到精确匹配值情况下,返回小于查找值e 的最大值)值。
所以,如果table_array不是升序排列的话,这个函数总能返回一个值,但这个值不一定正确。
但是,若查找值正好落在二分法的节点上,就有可能返回正确值了。
数字的顺序不用说了,字符的顺序按AscII码顺序,汉字则是按拼音顺序。
精确匹配用的是顺序查找,即从头到尾一个一个比较。找到就找到了,找不到就返回错误(#N/A表示找不到),不会返回近似值。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯