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

网站建设存在的问题项目如何进行网络推广

网站建设存在的问题,项目如何进行网络推广,wordpress user_activation_key,佛山市骏域网站建设目录 数组实现加法专题题目:数组实现整数加法思路分析:数组末尾开始,逐个元素1,10就进位,!10就退出复杂度:时间复杂度 O ( n ) O(n) O(n)、空间复杂度 O ( n ) O(n) O(n)Go代码 题目:字符串加法…

目录

数组实现加法专题

题目:数组实现整数加法

题目链接:LeetCode-66. 加一
在这里插入图片描述

思路分析:数组末尾开始,逐个元素+1,=10就进位,!=10就退出

复杂度:时间复杂度 O ( n ) O(n) O(n)、空间复杂度 O ( n ) O(n) O(n)

Go代码

func plusOne(digits []int) []int {length := len(digits)for i:= length-1; i>=0; i-- {digits[i]++digits[i] = digits[i]%10if digits[i] != 0 {return digits}}ret := make([]int, length+1)ret[0] = 1copy(ret[1:], digits)return ret
}

题目:字符串加法

题目链接:LeetCode-415. 字符串相加
在这里插入图片描述

思路分析:定义两指针分别指向两byte数组末尾,从后往前相加,十进制相加余数=%10,进位=/10

复杂度:时间复杂度 O ( m a x ( n , m ) ) O(max(n,m)) O(max(n,m))、空间复杂度 O ( 1 ) O(1) O(1)

Go代码

func addStrings(num1 string, num2 string) string {length1, length2 := len(num1), len(num2)ret := ""for i, j, sign := length1-1, length2-1, 0; i >=0 || j >= 0 || sign>0; i,j = i-1,j-1 {var n1, n2 intif i >= 0 {n1 = getNum(num1[i])}if j >= 0 {n2 = getNum(num2[j])}v := n1 + n2 + signret = strconv.Itoa(v%10) + retsign = v/10}return ret
}
func getNum(str byte) int {return int(str-'0')
}

题目:二进制加法

题目链接:LeetCode-LCR 002. 二进制求和
在这里插入图片描述

思路分析:定义两指针分别指向两byte数组末尾,从后往前相加,二进制相加余数=%2,进位=/2

复杂度:时间复杂度 O ( m a x ( n , m ) ) O(max(n,m)) O(max(n,m))、空间复杂度 O ( 1 ) O(1) O(1)

Go代码

func addBinary(a string, b string) string {length1, length2 := len(a), len(b)str := ""for i,j,sign := length1-1, length2-1, 0; i>=0 || j>=0 || sign>0; i,j = i-1,j-1{var n1, n2 intif i >= 0 {n1 = int(a[i]-'0')}if j >= 0 {n2 = int(b[j]-'0')}v := n1 + n2 + signstr = strconv.Itoa(v%2) + strsign = v/2}return str
}

幂运算专题

题目:求2的幂

题目链接:LeetCode-231. 2 的幂
在这里插入图片描述

解法1:试除法:循环除2,判断最后值是否==1

复杂度:时间复杂度 O ( l o g n ) O(log n) O(logn)、空间复杂度 O ( 1 ) O(1) O(1)

Go代码

func isPowerOfTwo(n int) bool {if n <= 0 {return false}for n%2==0 {n = n/2}return n==1
}

解法2:n&(n-1)==0 或者n&(-n)==n

如果存在非负整数k使得 n=2^k,则n的二进制表示为1后面跟k0
所以,正整数n2的幂,当且仅当n的二进制表示中只有最高位是1,其余位都是0,此时满足 n&(n-1)=0

复杂度:时间复杂度 O ( 1 ) O(1) O(1)、空间复杂度 O ( 1 ) O(1) O(1)

Go代码

func isPowerOfTwo(n int) bool {return n>0 && n&(n-1)==0
}
func isPowerOfTwo(n int) bool {return n>0 && n&(-n)==n
}

解法3:判断n能否被最大2的幂整除(判断n是否为最大2的幂的约数)

复杂度:时间复杂度 O ( 1 ) O(1) O(1)、空间复杂度 O ( 1 ) O(1) O(1)

Go代码

func isPowerOfTwo(n int) bool {max := 1<<30return n>0 && max%n == 0
}

题目:求3的幂

题目链接:LeetCode-326. 3 的幂
在这里插入图片描述

解法1:试除法:循环除3,判断最后是否==1

复杂度:时间复杂度 O ( l o g n ) O(log n) O(logn)、空间复杂度 O ( 1 ) O(1) O(1)

Go代码

func isPowerOfThree(n int) bool {if n <= 0 {return false}for n%3==0 {n = n/3}return n == 1
}

解法2:判断n能否被最大3的幂整除(判断n是否为最大3的幂的约数)

在32位有符号整数的范围内,最大的3的幂为3^19=1162261467,判断n是否能被该数整除,即n是否是该数的约数即可。

复杂度:时间复杂度 O ( 1 ) O(1) O(1)、空间复杂度 O ( 1 ) O(1) O(1)

Go代码

func isPowerOfThree(n int) bool {return n>0 && 1162261467%n==0
}

题目:求4的幂

题目链接:LeetCode-342. 4的幂
在这里插入图片描述

解法1:试除法:循环除4,判断最后是否==1

复杂度:时间复杂度 O ( l o g n ) O(log n) O(logn)、空间复杂度 O ( 1 ) O(1) O(1)

Go代码

func isPowerOfFour(n int) bool {if n <= 0 {return false}for n%4 == 0 {n = n/4}return n==1 
}

解法2:必然是2的幂,二进制时1必然在奇数位上n&0xaaaaaaaa==0

4 的一些幂次的二进制表示:

4^0 = 1,二进制表示:0001
4^1 = 4,二进制表示:0100
4^2 = 16,二进制表示:10000
4^3 = 64,二进制表示:1000000

这些幂次的二进制表示中,只有一个位是 1,而且这个 1 总是出现在奇数的位置上(从右数,从 0 开始计数)

复杂度:时间复杂度 O ( 1 ) O(1) O(1)、空间复杂度 O ( 1 ) O(1) O(1)

Go代码

func isPowerOfFour(n int) bool {return n > 0 && n & (n-1) == 0 && (n & 0xaaaaaaaa) == 0
}

解法3:必然是2的幂,对3取余为1 n%3==1

一个整数 n 对 3 取余的结果只可能是 0、1 或 2。如果一个数的二进制表示中只有一个位是 1,并且这个 1 出现在奇数的位置上,那么这个数对 3 取余的结果就是 1。

复杂度:时间复杂度 O ( 1 ) O(1) O(1)、空间复杂度 O ( 1 ) O(1) O(1)

Go代码

func isPowerOfFour(n int) bool {return n > 0 && n & (-n)==n && n%3==1
}
http://www.yayakq.cn/news/941305/

相关文章:

  • 网站开发与应用是什么offic做网站的软件
  • 中山微网站建设报价搜索引擎营销名词解释
  • 电子商务 网站模板青岛seo网站关键词优化
  • 有专门做预算的网站没品牌营销型网站
  • 中山网站建设制作 超凡科技网站系统维护一般多长时间
  • 无锡网站建设选众鼎佛山专业建设网站
  • 儿童摄影网站源码微信小程序本地服务器搭建
  • 做视频网站用什么语言做网站服务器在哪买
  • 山西省建设厅执业资格注册中心网站做鱫视频网站
  • 英文网站网站建设网络营销工具中最基本最重要的是
  • 品牌营销型网站企业做网站需要注意事项
  • 国内erp公司排名seo关键词排名优化系统源码
  • 建设工程合同签订的原则seo推广效果怎么样
  • 网站设计公司网站seo网络公司
  • 花都有?]有网站建设的免费咨询养生顾问
  • 网站建设费用做无形资产启用中文域名大网站
  • 重庆网站推广报价网站建设优化建站
  • 汝阳网站建设哪家好南通模板自助建站
  • 西安高端网站制作公司哪家好网页制作视频教程网
  • 做网站的周记怎么注册公司要多少钱
  • 网站建设样本制作logo免费网站
  • 大德通众包网站建设网站后台管理系统怎么弄
  • 网站做301跳转的方法成都网站开发建设推广
  • 上海青浦做网站公司青岛网上房地产官网
  • 怀化网站优化推荐网页美工设计的要点
  • 营销网站怎么做网站建设合同书(范本)
  • 优化站点网站推广 方法
  • 网站建设推广话术开场白wordpress 主题 修改
  • 使用模块化的网站wordpress rest api评论
  • 泰安肥城网站建设渭南华阴建设银行的网站是多少