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

郑州做网站网站建设费用搜索引擎优化的技巧有哪些

郑州做网站网站建设费用,搜索引擎优化的技巧有哪些,网站日常推广怎么做,鞍山手机网站设计目录 1. 判断字符是否唯一2. 消失的数字3. 两整数之和4. 只出现一次的数字II5. 消失的两个数字 前情提要:如果对一些常见的二进制位运算不熟悉,请看这篇文章: 常见的位运算 1. 判断字符是否唯一 面试题 01.01. 判定字符是否唯一 - 力扣&…

目录

  • 1. 判断字符是否唯一
  • 2. 消失的数字
  • 3. 两整数之和
  • 4. 只出现一次的数字II
  • 5. 消失的两个数字

前情提要:如果对一些常见的二进制位运算不熟悉,请看这篇文章: 常见的位运算

1. 判断字符是否唯一

面试题 01.01. 判定字符是否唯一 - 力扣(LeetCode)

在这里插入图片描述

思路:利用位图的思想,定义一个整数来模拟哈希表,根据每个比特位对应的值来映射字符

在这里插入图片描述

代码实现:

class Solution {public boolean isUnique(String astr) {        int BitMap = 0;int n = astr.length();if(n > 26){return false;}for(int i=0;i<n;i++) {char ch = astr.charAt(i);if(((BitMap>>(ch-'a')) & 1)==1){return false;} else {BitMap |= (1<<(ch-'a'));}}return true;}
}

2. 消失的数字

268. 丢失的数字 - 力扣(LeetCode)

在这里插入图片描述

思路:

在这里插入图片描述

代码实现:

class Solution {public int missingNumber(int[] nums) {// 异或运算int n = nums.length;int ret = 0;for(int i=0;i<=n;i++){ret^=i;}for (int i = 0; i < n; i++) {ret ^= nums[i];}return ret;// int n = nums.length;// //高斯求和// int sum = ((n)*(n+1))/2;// int numsSum = 0;// for(int i=0;i<nums.length;i++) {// numsSum += nums[i];// }// return sum - numsSum;}
}

3. 两整数之和

371. 两整数之和 - 力扣(LeetCode)

在这里插入图片描述

思路:

1、让这两个数a、b无进位相加(异或)所得结果x

2、a和b按位与所得结果carry

3、a=x,b=carry

4、a和b无进位相加(疑惑)

循环上面步骤直到b为0,此时相加结果是a

class Solution {public int getSum(int a, int b) {while(b!=0){int x = a^b;//先计算无进位相加int carry = (a & b)<<1;a = x;b = carry;}return a;}
}

4. 只出现一次的数字II

137. 只出现一次的数字 II - 力扣(LeetCode)

在这里插入图片描述

思路:

在这里插入图片描述

定义一个变量ret,依次计算nums数组中第i位的和sum,接着让sum%3,根据结果对应的值修改ret对应比特位的值

class Solution {public int singleNumber(int[] nums) {int ret = 0;for(int i=0;i<32;i++){//依次修改ret中的每一位int sum = 0;for(int j=0;j<nums.length;j++){sum+= ((nums[j]>>i)&1);//计算第i位的和}sum%=3;if(sum==1){//修改第i位置的值ret |= (1<<i);}}return ret;}
}

5. 消失的两个数字

面试题 17.19. 消失的两个数字 - 力扣(LeetCode)

在这里插入图片描述

思路:

在这里插入图片描述

class Solution {public int[] missingTwo(int[] nums) {int len = nums.length;int N = len + 2;int ret = 0;for (int i = 0; i < nums.length; i++) {ret ^= nums[i];}for (int i = 1; i <= N; i++) {ret ^= i;}// ret为消失的两个数^的结果int lowBit = ret & (-ret);int[] ans = new int[2];ans[0] = 0;ans[1] = 0;for (int i = 1; i <= N; i++) {if ((i & lowBit) != 0) {ans[0] ^= i;} else {ans[1] ^= i;}}for (int i = 0; i < nums.length; i++) {if ((nums[i] & lowBit) != 0) {ans[0] ^= nums[i];} else {ans[1] ^= nums[i];}}return ans;}
}
http://www.dt0577.cn/news/35173.html

相关文章:

  • 吕梁网站制作吕梁安全seo快速排名多少钱
  • 网站问题解决aso如何优化
  • 做网站市场分析无锡网络优化推广公司
  • 电子商务网站建设与运营网络营销特点
  • 网站开发的流程和步骤是什么网络营销的基本职能
  • wordpress wp unslash北京百度seo服务
  • 如何修改wordpress手机模板seo挂机赚钱
  • 网站建设详情报价百度下载电脑版
  • 网站权重如何做上海seo关键词优化
  • 网店网站建设规划方案跨境电商怎么开店铺
  • h5游戏排行榜前十名刷关键词排名seo软件
  • ps免抠素材网站大全seo搜索引擎优化价格
  • 如何开展网站推广百度sem运营
  • 高端网站定制费用是多少电商网站模板
  • 大学生做网站的流程老铁外链工具
  • 凡科专属网站免费注册必应搜索引擎地址
  • 小网站asp好还是php好谷歌海外推广
  • 如果做微商需不需要开个网站近期10大新闻事件
  • 设计图片素材网站有哪些厦门人才网招聘官网
  • 新疆建筑工程网站网站提交链接入口
  • 高端品牌网站建设哪家好肇庆百度快照优化
  • 建设网站好公司简介做网站的步骤
  • 中国建设管理信息网站微信小程序开发教程
  • 使用joomla的网站免费直链平台
  • 网站建设一级页面二级页面网络营销seo培训
  • 网站代理备案价格网络流量分析工具
  • 在网站做推广属于广告费吗自媒体视频剪辑培训班
  • 捡个杀手做老婆在哪个网站发布的免费投放广告平台
  • ps网站参考线怎么做厦门人才网个人会员
  • 建站工具 开源广告留电话号的网站