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

网站模板下载器网站建设功能设计

网站模板下载器,网站建设功能设计,网站备案号在哪里看,营销网站建设的重要性乘除顺序问题 在据卡特兰数[1]公式,解决leetcode-96 不同的二叉搜索树[2]时,遇到一个非常诡异的问题, package mainimport fmtfunc main() { for i : 0; i 40; i { fmt.Printf(第%d个卡特兰数为:%d\n, i, numTrees(i)) }}func numTrees(n int) i… 乘除顺序问题 在据卡特兰数[1]公式,解决leetcode-96 不同的二叉搜索树[2]时,遇到一个非常诡异的问题, package mainimport fmtfunc main() { for i : 0; i  40; i {  fmt.Printf(第%d个卡特兰数为:%d\n, i, numTrees(i)) }}func numTrees(n int) int { rs : 1 for i : 0; i  n; i {  rs  rs * 2 * (2*i  1) / (i  2)        //rs * 2 * (2*i  1) / (i  2) } return rs} 即 注释掉的这一行,居然和上一行得出了完全不同的结果. 虽然马上解决,但对固有认知影响巨大---难道对一直以来习以为常的乘法语法糖理解有误??? * 为乘法和赋值运算符它将右操作数与左操作数相乘并将结果赋给左操作数. C * A 相当于 C C * A 读了一遍感觉没问题,那原因出在哪里呢? 构建demo, package mainimport fmtfunc main() { rs1 : 2 rs2 : 2 i : 3 fmt.Println(当前的rs1,rs2为:, rs1, rs2) fmt.Println(2 * (2*i  1) / (i  2)为:, 2*(2*i1)/(i2)) rs1  rs1 * 2 * (2*i  1) / (i  2) rs2 * 2 * (2*i  1) / (i  2) fmt.Println(最后rs1 is,rs2 is:, rs1, rs2)} 结果为 当前的rs1,rs2为: 2 22 * (2*i  1) / (i  2)为: 2最后rs1 is,rs2 is: 5 4 初步判断,问题出在除法这里. 去掉除法部分后,确实得到的结果都一样. 在数学中 乘除运算不分先后. 但因为可能无法整除对计算机来说除不尽的部分会一律向下取整。所以乘除的先后顺序实际是对最终结果有影响的 对于 rs1,其等于 2 * 2 * 7 / 5,即28/5,向下取整,即为5 对于rs2, 会先计算后面部分2 * (2*3 1) / (3 2) 14/5 2, 而后计算 2*2 4 crontab配置问题 Linux自带的crontab只能精确到分钟,而某些语言的工具包,可以提供精确到秒的crontab. 但在使用时,务必注意,如0 */10 * * * *,是从下一个 xx:x0:00 开始,每10分钟执行一次. 如写成 * */10 * * * *, 就成了每秒钟执行一次,如有对数据库的读写操作,会造成巨大压力. 上线前可以用这个工具[3], 选Java(Spring)项,来校验一下 map和slice变量的赋值作用范围问题 package mainimport fmtfunc main() { m : make(map[string]string) m[gender]  女 fmt.Println(map is:, m) f1(m) fmt.Println(map is:, m)}func f1(m1 *map[string]string) *map[string]string { (*m1)[name]  dashen (*m1)[gender]  男 return m1} 运行结果: map is: map[gender:女]map is: map[gender:男 name:dashen] 但这种写法,非常不Golang! 在函数A中定义一个map记为m,想要在函数B,函数C中对其进行赋值或修改,是没有必要传指针的 package mainimport fmtfunc main() { m : make(map[string]string) m[gender]  女 fmt.Println(map is:, m) f1(m) fmt.Println(map is:, m)}func f1(m1 map[string]string) map[string]string { m1[name]  dashen m1[gender]  男 return m1} 运行结果: map is: map[gender:女]map is: map[gender:男 name:dashen] 对于slice,情况有所不同 package mainimport fmtfunc main() { sli : make([]string, 1) sli[0]  宋江 fmt.Println(slice is:, sli) f1(sli) fmt.Println(slice is:, sli)}func f1(sli1 []string) []string { sli1[0]  晁盖 return sli1} 运行结果: slice is: [宋江]slice is: [晁盖] 与map的全部引用不同,slice只是底层数组是指针类型,长度和容量不是. 对于上面这样只修改原有值,而没有append操作的行为,是没有问题的. 但如果有append操作,引发了扩容,底层数组的地址变了,则将会得不到预期结果 sql的update问题 update一条不存在的记录,Affected rows为0,但并不会报错 UPDATE a SET name卡拉马佐夫兄弟 WHERE id12345 update一条存在的记录,但实际并没有对现有内容进行更新,Affected rows也会是0 Golang 58个坑[4] 参考资料 [1] 卡特兰数: https://dashen.tech/2021/02/28/%E5%8D%A1%E7%89%B9%E5%85%B0%E6%95%B0/ [2] leetcode-96 不同的二叉搜索树: https://dashen.tech/2015/03/01/leetcode-96-%E4%B8%8D%E5%90%8C%E7%9A%84%E4%BA%8C%E5%8F%89%E6%90%9C%E7%B4%A2%E6%A0%91/ [3] 这个工具: https://tool.lu/crontab/ [4] Golang 58个坑: https://www.bookstack.cn/read/topgoer/e2f3480b549aebc2.md 本文由 mdnice 多平台发布
http://www.hkea.cn/news/14507299/

相关文章:

  • 做网站的图片大全html5手机网站案例
  • 怎么做学校网站网站的建设流程图
  • 广州 网站开发 骏域想要推广页正式
  • 网站建设 开发人一丶一一人一一绍兴住房和城乡建设厅网站
  • 高端设计网站建设wordpress改变后台地址
  • 网站后台忘了推广策略和促销策略的区别
  • 网站qq联系代码什么是网站挂马
  • 推荐网站建设收费标准wordpress汽车主题
  • 贵州贵阳建网站的电话网页设计制作实验报告
  • 闸北企业网站制作工商联网站建设方案
  • 专业网站建设是哪家内容营销包括
  • 商会网站建设方案书亚马逊关键词排名查询工具
  • php网站是什么数据库文件wordpress lms插件
  • 如何做企业网站建设上海最专业的集团网站建设
  • php开发一个企业网站价格百度云如何做网站
  • 怎么搭建钓鱼网站合肥专业做淘宝网站推广
  • “网站制作”电商网站开发视频
  • 网站视觉设计方案响应式网站建设合同
  • 傻瓜式建站软件下载网站建设大赛策划书
  • 设一个网站需要多少钱桂林市防疫最新政策
  • 已将绑定域名给另一个网站泉州城乡建设网站
  • 做网站如何做视频网站建设最常见的问题
  • 企业网站模板 简洁南京市互联网平台公司
  • 东莞长安网站设计房山做网站公司
  • 内部网站建设拓扑王者荣耀是哪家公司开发的
  • 注册网站需要多少网站更改公司需要重新备案吗
  • 公司制做网站兰州网站开发哪里可以做
  • 建设网站站点过程中四川网站建设 lkcms
  • 惠州做棋牌网站建设哪家公司收费合理哈尔滨网站建设优化
  • 商务网站建设pdfwordpress dux商城