当前位置: 首页 > news >正文

网站开发众包泰安网站建设哪里找

网站开发众包,泰安网站建设哪里找,wordpress 发布文章主动推送百度,网站管理员是什么意思leetcode-28 实现strStr() 更熟悉的字符串匹配算法可能是KMP算法, 但在Golang中,使用的是Rabin–Karp算法 一般中文译作 拉宾-卡普算法,由迈克尔拉宾与理查德卡普于1987年提出 “ 要在一段文本中找出单个模式串的一个匹配#xff0c;此算法具有线性时间的平均复杂度#xff0… leetcode-28 实现strStr() 更熟悉的字符串匹配算法可能是KMP算法, 但在Golang中,使用的是Rabin–Karp算法 一般中文译作 拉宾-卡普算法,由迈克尔·拉宾与理查德·卡普于1987年提出 “ 要在一段文本中找出单个模式串的一个匹配此算法具有线性时间的平均复杂度其运行时间与待匹配文本和模式串的长度成线性关系。虽然平均情况下此算法表现优异但最坏情况下其复杂度为文本长与模式串长的乘积 尽可能多的利用上一步的结果这是优化时间复杂度的一大核心 对于数字类型的字符串可有如下匹配方法 将该方法扩展到非数字类型的字符串 以上这张图片的LaTex $$\begin{gather}  对于长度为n的字符串 x_{0} x_{1} x_{2} ... x_{n-1},\\其对应的“值”val为\\val  x_{0} \times r^{n-1}  x_{1}\times r^{n-2}  ...   x_{n-1}\times r^{0}  \\其中r为进制数\end{gather}$ ASCII英语字符与二进制位之间的关系 (其他语言) Unicode将世界上所有的符号都纳入其中 每个符号都对应一个独一无二的编码最多可以容纳1114112个字符(2021年9月公布的14.0.0已经收录超过14万个字符) (有个问题是浪费空间。。) 也译作统一码/万国码/国际码 UTF-8: 使用最广的一种 Unicode 的实现方式 (最大特点是 变长的编码方式) 字符编码笔记ASCIIUnicode 和 UTF-8 中日韩汉字Unicode编码表 源码注释 将源码中的16777619进制改为10进制从字符串31415926中搜索4159 4159 package mainimport ( fmt strconv)func main() { var primeRK uint32  10 sep : 4159 hash : uint32(0) for i : 0; i  len(sep); i {  //fmt.Println(sep[i])  //fmt.Println(string(sep[i]))  next, _ : strconv.Atoi(string(sep[i]))  //hash  hash*primeRK  uint32(sep[i])  hash  hash*primeRK  uint32(next)  fmt.Println(hash) } } 输出为 4414154159 完整的以10为primeRK从31415926中搜索4159的代码 package mainimport ( fmt strconv)const PrimeRKNew  10func main() { str : 31415926 substr : 4159 fmt.Println(最终结果为:,  IndexRabinKarpNew(str, substr))}func HashStrNew(sep string) (uint32, uint32) { hash : uint32(0) for i : 0; i  len(sep); i {  //fmt.Println(sep[i])  //fmt.Println(string(sep[i]))  next, _ : strconv.Atoi(string(sep[i]))  //hash  hash*primeRK  uint32(sep[i])  hash  hash*PrimeRKNew  uint32(next)  fmt.Println(hash) } var pow, sq uint32  1, PrimeRKNew for i : len(sep); i  0; i  1 {  fmt.Println(i is:, i, ---, i1 is:, i1)  if i1 ! 0 {   pow * sq  }  sq * sq  fmt.Println(pow is:, pow) } return hash, pow}func IndexRabinKarpNew(s, substr string) int { // Rabin-Karp search hashss, pow : HashStrNew(substr) fmt.Println(hashss, pow:, hashss, pow) fmt.Println(~~~分割线~~~) n : len(substr) var h uint32 for i : 0; i  n; i {  next1, _ : strconv.Atoi(string(s[i]))  //h  h*PrimeRKNew  uint32(s[i])  fmt.Println(next1 is:, next1)  h  h*PrimeRKNew  uint32(next1) } fmt.Println(h即T串初始值为:, h) if h  hashss  s[:n]  substr {  return 0 } for i : n; i  len(s); {  h * PrimeRKNew  fmt.Println(h*:, h)  last, _ : strconv.Atoi(string(s[i])) //当前T串的最后一个元素  fmt.Println(last is:, last)  //h  uint32(s[i])  h  uint32(last)  fmt.Println(h:, h)  //h - pow * uint32(s[i-n])  first, _ : strconv.Atoi(string(s[i-n])) //当前T串的第一个元素  fmt.Println(first is:, first)  h - pow * uint32(first)  fmt.Println(h-:, h)  i  fmt.Println(---下次循环的 i为 ---, i)  if h  hashss  s[i-n:i]  substr { //s[i-n:i]为当前的T串   return i - n  } } return -1} 输出为 4414154159i is: 4 --- i1 is: 0pow is: 1i is: 2 --- i1 is: 0pow is: 1i is: 1 --- i1 is: 1pow is: 10000hashss, pow: 4159 10000~~~分割线~~~next1 is: 3next1 is: 1next1 is: 4next1 is: 1h即T串初始值为: 3141h*: 31410last is: 5h: 31415first is: 3h-: 1415---下次循环的 i为 --- 5h*: 14150last is: 9h: 14159first is: 1h-: 4159---下次循环的 i为 --- 6最终结果为: 2 strings.Contains()源码阅读暨internal/bytealg初探 书籍推荐 柔性字符串匹配 牛刀小试: 力扣28. 实现strStr() 力扣187. 重复的DNA序列 力扣686. 重复叠加字符串匹配 另 除去KMP和RK算法字符串匹配还有 Boyer-Moore算法(简称BM算法)系列算法其核心思想是 “ 在字符串匹配过程中模式串发现不匹配时跳过尽可能多的字符以进行下一步的匹配从而提高匹配效率 BM算法的简化版Horspool算法 以及性能更好的Sunday算法 Python用的也不是KMP而是boyer-moore和horspool, 源码点此 KMP 算法的实际应用有哪些 图解字符串匹配之Horspool算法和Boyer-Moore算法 本文由 mdnice 多平台发布
http://www.hkea.cn/news/14568268/

相关文章:

  • wap网站模板下载沈阳网站制作定制策划
  • 个人网站怎么做引流做网站主要注意些什么问题
  • 建设网站费用成都网站建设q479185700棒
  • 郑州网站微信微博维护wordpress后台编辑
  • 石景山做网站百度图片搜索入口
  • 徐州网站营销网站的建设初步定位
  • 做兼职网站的主要参考文献餐饮业网站建设招标书
  • 网站工信部本案最近播放中文版在线观看电视剧
  • 网站网格布局怎样制作网站站点
  • 哪个网站可以做logo乔拓云微信小程序官网
  • 帮人做任务的网站网站开发代淘宝店铺装修
  • 成都网站建设 工资中小型网站建设案例
  • 建设网站资质查询网站网站是怎么做的
  • 帮客户做ppt什么的在哪个网站华为荣耀手机官网
  • 网站怎么样被百度收录wordpress手机域名
  • 网站建设哪家公司好一点如何上传自己做的网站
  • django做的网站安全吗河北建设人才网官网
  • 网站素材图片海南进出口公司排名
  • 网站设计建设濮阳网站建设 公司名字
  • 营销型公司网站有哪些偃师建设局网站
  • 安徽建设工程造价信息网站h5课件制作软件
  • 推荐的网站网站建设条件
  • 邯郸建设局网站南阳市住房和城市建设局网站
  • 办个网站需要多少钱手机网站设计建设服务
  • jsp做就业网站靖江网站开发
  • 上海公司注册一站式企业服务四川网站建设设计公司
  • 做淘宝客新增网站推广v9双语版网站怎么做
  • 莱芜区宣传部网站苏州新区保洁公司
  • 如何构建电子商务网站图片上传分享平台
  • 做网站基本教程江川区住房和城乡建设局网站