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

亿网行网站建设114企业网360优化关键词

亿网行网站建设114企业网,360优化关键词,wordpress默认插件,wordpress定制器题目一: 题目链接: 思路一: 1.两个数二进制之间进行异或如果不产生进位操作那么两个数的和就是就是两个数进行异或的结果。 举例:5(0101)2(0010)进行异或等于:7&#xf…

题目一:

请添加图片描述
题目链接:

思路一:

1.两个数二进制之间进行异或如果不产生进位操作那么两个数的和就是就是两个数进行异或的结果。
举例:5(0101)2(0010)进行异或等于:7(0111)相同为0,不同位1.
2.如果两个数之间需要进位
1.如果两个1进行异或那么这个位置就变成了0满足进位的条件。(对于两个数异或求非进位和来说)。
2.只有两个1才是进位,所以使用与的方法获取要进的位之后进行左移动。(得到进位之后的数值)。
3.进行相加,但是不可以使用加法。因为我们知道两个数之间如果不产生进位操作,按位异或就是他们的和。
4.循环判断按位与的结果为0的时候说明两个数相加不存在进位。

int Add(int num1, int num2 ) {// write code hereint sum, forward;do{//1.每一个位置相加,不产生进位(10(1010)+2(0010)-->8(1000)不进位)sum = num1^num2;//2.找到要加的进位数(10(1010)&2(0010)-->2(0010)<<1-->4(0100))forward = (num1&num2) << 1;//3.将前两步的值相加,但是相加不能用加法,重复前面两个步骤,直到不产生进位num1 = sum;//第二步的forward值为0,说明没有位需要前进,它们的和必然是sum的值num2 = forward;} while (num2 != 0);//结束条件是不产生进位return num1;
}

题目二

请添加图片描述
题目链接:

>思路一:

1.使用双for循环判断。
2.从1到n循环遍历,每一个数在数组中从前到后去判断。是否存在
3.如果数组被遍历完全动没有相等的值那么说明这个外面循环的这个数不存在于数组中。

int* findDisappearedNumbers(int* nums, int numsSize, int* returnSize){int n = numsSize;int* num = (int*)calloc(n,sizeof(int));int count = 0;int j = n;int flag = 0;for (int i = 1; i <= n; i++){int j = 0;for (j = 0,flag=0; j < n; j++){if ((nums[j])==i ){flag = 1;break;}}if (flag!=1){(*(num+count)) = i;count++;flag = 0;}}(*returnSize) = count;return num;
}

产生问题:
请添加图片描述

>思路二:

0.进行快速排序使nums先有序
1.不允许开辟额外的空间,因为有连续的数值存在。
2.从nums找出单独的数放到num中,并记录个数为count。
3.把num的内容拷贝到nums中。num的前面count个元素置为空
4.这个时候满足[1,n]中存在的数只有一个在nums中。
5.从1到n开始遍历,nums数组。
6.当nums的最后一个不是n就需要有一个k<=n的一个判断条件如果没有的化(n2是nums中单个数的元素个数)[num[n2-1],n]这些数值是会失去找不到的。

int cmp(void*p1,void*p2){return (*((int*)p1))-(*((int*)p2));}
int* findDisappearedNumbers(int* nums, int numsSize, int* returnSize){int n = numsSize;int* num = (int*)calloc(n,sizeof(int));int count = 0;qsort(nums,n,sizeof(int),cmp);//1.从前面到后面只有一个数按照顺序放到num里面。num[count]=nums[0];count++;for(int i=0;i<n-1;i++){if(nums[i+1]!=num[count-1]){num[count]=nums[i+1];count++;}}//2.把只有一个的数放回去到nums中,把num置为空。int n2=count;count=0;memcpy(nums,num,sizeof(int)*n2);memset(num,0,sizeof(int)*n2);//3.当nums的最后一个不是n就需要有一个k<=n//的一个判断条件如果没有的化[num[n2-1],n]这些数值是会失去找不到的。int j=0;int k=1;//1,1,2,2,这样的情况。//1,2,有k<=n否则是否出现这样的情况导致有的数没有判断到。while(j<n2||k<=n){if(nums[j]==k){k++;j++;}else{num[count++]=k;k++;}}(*returnSize) = count;return num;
}
http://www.yidumall.com/news/4598.html

相关文章:

  • 企业网站建设最需要的是什么网络营销的四个特点
  • 网站开发mvc架构指数分布的期望和方差
  • 坪山网站建设信息酒泉网站seo
  • 网站建设语言环境百度关键词排名销售
  • 网站主机ip是独立的好中国新闻
  • ofo的网站用什么做的沧州seo推广
  • 建e网室内设计网下载windows优化大师有什么功能
  • 专业做电脑系统下载网站西安百度竞价开户
  • 郑州专门做网站的公司有哪些百度收录规则2022
  • 洛阳制作网站的公司微信公众号怎么开通
  • 微信公众号app下载安装网站优化推广教程
  • 广州力科网站建设公司保定seo排名外包
  • 网站建设设计方案网页制作接单
  • 做彩铃的网站代运营
  • 怎么给网站做跳转北京seo优化排名推广
  • 怎么找网站搜狗搜图
  • 南京设计网站建设如何做网站设计
  • 网站建设的策划方案站长工具站长
  • 南宁网站建设设计看广告赚钱的平台
  • 网页设计与网站建设微信小程序建站
  • 郑州快速建站公司软文推广文案
  • 网站推广套餐app下载免费安装
  • 网站专题制作 公司淘宝网站的推广与优化
  • 网站建设设计案例网站logo实验报告公司宣传网页怎么做
  • 北京装饰公司名称seo秘籍优化课程
  • 农业建设公司网站百度怎么收录网站
  • 上海做网站公司推广方法有哪几种
  • 久其软件公司网站快速排名点击工具
  • 做网站不搭建本地环境分类信息网
  • 个人做网站要注意什么如何做电商