- 主题:Re: 谁给我写一个高效算法,可以支付宝或者微信转账
通过你的例子没敢完全确定规则
就是*表示任意位通配符, 之前输入和当前输入只要有重叠就算冲突对吗?
比如 1-5 5-10冲突?
【 在 speedboy2998 的大作中提到: 】
: 一个检测电话号码重复冲突的算法。
: 一个输入框,允许用如下形式输入电话号码:
: 13877692008
: ...................
--
FROM 80.76.206.*
比如之前如果输入了13*
那么后续输入 100-130就是冲突
这个需求太奇怪了。。如果只考虑电话号码,完全没必要考虑把13*匹配到130
如果只把13*视为13000000000-13999999999,三种格式的输入都可以转换成[a,b]的格式,然后就是判断区间是否重复的问题了
【 在 speedboy2998 (极品飞车) 的大作中提到: 】
: 一个检测电话号码重复冲突的算法。
: 一个输入框,允许用如下形式输入电话号码:
: 13877692008
: ...................
--
FROM 120.244.142.*
*是通配符,13*表示所有13开头的号码,不论位数。
输入100-130,这里130这个号码自然和13*冲突。
【 在 lag 的大作中提到: 】
: 比如之前如果输入了13*
: 那么后续输入 100-130就是冲突
: 这个需求太奇怪了。。如果只考虑电话号码,完全没必要考虑把13*匹配到130
: ...................
--
修改:speedboy2998 FROM 113.246.63.*
FROM 113.246.63.*
是的, 5冲突了。
【 在 SHENOK 的大作中提到: 】
: 通过你的例子没敢完全确定规则
:
: 就是*表示任意位通配符, 之前输入和当前输入只要有重叠就算冲突对吗?
: ...................
--
FROM 113.246.63.*
这不难
要多高效?
【 在 speedboy2998 () 的大作中提到: 】
: 一个检测电话号码重复冲突的算法。
:
: 一个输入框,允许用如下形式输入电话号码:
: 13877692008
--
FROM 138.19.103.*
如果号码长度(十进制)上界为L
已经输入了n个不冲突的区间/前缀通配
那判断下一个输入是否冲突/如果不冲突的话更新n+1的时间/空间复杂度是log(nL)/L
输入所有n组的复杂度是n*log(nL)/nL
还行吧
【 在 fanci () 的大作中提到: 】
: 这不难
:
: 要多高效?
:
--
修改:fanci FROM 138.19.103.*
FROM 138.19.103.*
就是很快,哈哈,没明确指标。愿意做么?私信报价吧
【 在 fanci 的大作中提到: 】
: 这不难
: 要多高效?
--
FROM 113.246.63.*
可以。能私信报价吗?
【 在 fanci 的大作中提到: 】
: 如果号码长度(十进制)上界为L
: 已经输入了n个不冲突的区间/前缀通配
: 那判断下一个输入是否冲突/如果不冲突的话更新n+1的时间/空间复杂度是log(nL)/L
: ...................
--
FROM 113.246.63.*
说个思路你自己实现一下吧。其实二楼已经说得八九不离十了。如果没有前缀通配,那这个问题就是整数区间求并求交,二分法不难。而对于前缀通配,比如13*,而已转换成以下区间的并:13, 130-139, 1300-1399, 13000-13999, 等等,其个数是电话号码的长度上界L。
【 在 speedboy2998 () 的大作中提到: 】
: 可以。能私信报价吗?
:
:
: 【 在 fanci 的大作中提到: 】
--
FROM 138.19.103.*
500
【 在 speedboy2998 的大作中提到: 】
: 可以。能私信报价吗?
: 【 在 fanci 的大作中提到: 】
: : 如果号码长度(十进制)上界为L
: ....................
#发送自zSMTH@IOS
--
FROM 106.120.233.*